【发布时间】:2013-08-07 05:57:17
【问题描述】:
我有以下
class Portfolio < ActiveRecord::Base
belongs_to :sector
attr_accessible :overview, :title, :sector_id
end
class Sector < ActiveRecord::Base
has_many :portfolios
attr_accessible :name
end
我的表单中有一个 collection_select,用于创建新的投资组合
<%= f.collection_select(:sector_id, Sector.all, :id, :name, {:prompt => "Please Select a Sector"}, {:multiple => true}) %>
当我提交表单时,它会保存所有其他属性,但没有传递或保存扇区 ID。
我希望能够为扇区参数保存多个 id
我可能缺少什么?
我需要在我的投资组合模型中使用 Accepts_nested_attributes_for :sectors 吗?
【问题讨论】:
-
{:multiple => true}正在制造一个问题,我相信你可以保存一个sector_id不使用它。 -
我想保存多个ID,有什么想法吗?
-
更改您的数据模型?您只有一个部门 ID。
-
这么多的关系?抱歉不太清楚你的意思
-
但我猜
sector_id是您的外键,因此不建议将其保存到数组中,而是使用连接表portfolio_sectors和列id:int, portfolio_id:int, sector_id:int。如果您仍想在列 ref 中保存一个数组 stackoverflow.com/questions/3100427/…
标签: ruby ruby-on-rails-3 forms