我有一个表格,我的用户可以选择日期和地点来创建新的预订 每个预订都可以有几个点。
class Reservation < ActiveRecord::Base
has_many :spotations
has_many :spots, :through => :spotations
end
class Spotation < ActiveRecord::Base
belongs_to :reservation
belongs_to :spot
end
class Spot < ActiveRecord::Base
has_many :spotations
has_many :reservations, :through => :spotations
end
现在我给我的用户一个select_list来选择一个点。 该列表中仅显示可用的点。 (仅限该项目当天未预订的景点)
<%= f.collection_select :spot_ids, @availablespots, :id, :name, {:prompt => true}, {class: "form-control spot_selection", id:"reservation_spot_ids", name:"reservation[spot_ids]", required:"required" } %>
一切都运作良好。
但我让我的模特接受了几个地方: 我想预订用户选择的地点和之前的地点(旅行时间)。
我不知道如何在我的控制器中执行此操作。
我的所有景点都是按照ID排序的。 (1到20)如果用户选择可用的地点id = 4,我也想预订id = 3。
有人有想法吗? 谢谢,
答案 0 :(得分:0)
我认为你正在考虑更困难的方式.. &#39; n&#39;是用户选择的号码。 然后,&#39; n-1&#39;可以在你的控制器中创建。
在操纵之前总是看到所有传递的参数,
使用<% logger.debug "PARAM CHECKER: #{params.inspect}" %>
在考虑如何从该哈希类型参数中获得所需内容后,您可以创建n-1
。