1

我对 rails 4 中的 grouped_collection_select 有一些问题,所以我需要你的帮助。

我有这个模型:

class Event < ActiveRecord::Base
has_many :appointments
belongs_to :user
scope :evento_sin, -> { where(available: "1") }
end

class User < ActiveRecord::Base
has_many :events
has_many :appointments
devise :database_authenticatable, :registerable,
     :recoverable, :rememberable, :trackable, :validatable
     def medic_with_spec
        "#{especialidad}, #{name} #{lastname}"          
     end
end

我的观点是:

<div class="field">
<%= f.label :user_id, "Médicos" %><br />
<%=select("appointment", "user_id", @usuarios.collect {|p|     [p.especialidad+" - "+p.lastname + ", " +p.name, p.id ] }, { include_blank: true }) %>
</div>

<div class="field">
<%= f.label :event_id, "Consultas Disponibles" %><br />
<%= f.grouped_collection_select :event_id, @usuarios.order(:name), 
:eventos.evento_sin, :id, :id, :start_time, include_blank: true %>

但我收到:未定义的方法`evento_sin' for :events:Symbol

这段代码会发生什么?

谢谢你的帮助

4

1 回答 1

0

:events:Symbol 的未定义方法 `evento_sin'

您在模型中定义了一个范围 ,并且您正在像这样使用它,这是没有意义的。:evento_sinEvent:eventos.evento_sin

grouped_collection_select应该看起来像这样

<%= f.grouped_collection_select :event_id, @usuarios.order(:name), 
Event.evento_sin, :id, :id, :start_time, include_blank: true %>
于 2015-06-26T04:54:21.533 回答