我想創建一個簡單的has_many關係,然後用窗體進行更新。 在此先感謝您的幫助。找不到Has_many選擇形式
模型
class Position < ActiveRecord::Base
#position attributes
has_many :educations, :foreign_key => "position_id"
class Education < ActiveRecord::Base
belongs_to :position
EDUCATION_CHOICES = ([["Undergrad", "0"],["Master", 1],["PHD", 2]])
教育數據模型有PK(自動),position_id,education_value和時間戳。 education_value旨在值從EDUCATION_CHOICES
存儲startupfeeder_dev=# select * from educations; id | position_id | education_value | created_at | updated_at ----+-------------+-----------------+----------------------------+---------------------------- 3 | 11 | 1 | 2012-04-27 08:26:28.077517 | 2012-04-27 16:27:50.330082 1 | 12 | 1 | 2012-04-27 00:40:22.868336 | 2012-04-27 16:30:07.123653 2 | 12 | 2 | 2012-04-27 00:45:06.613306 | 2012-04-27 16:30:07.127601 (3 rows)
形式:
<%= f.select(:education_ids, Education::EDUCATION_CHOICES,{ :prompt => "Please select"},
{ :multiple => true, :size => 5 }) %>
位置控制器:
@position = Position.new(params[:position])
標準,沒有被添加。
我手動添加了一些數據,它很好。
但更新和創建映射不正確。
這是我在我的日誌得到:
Processing by PositionsController#create as HTML
參數:{ 「位置」=> { 「標題」=> 「test13」, 「education_ids」=> [ 「」, 「1」 ,「2」],「description」=>「test13」},「commit」=>「Create Position」,「authenticity_token」=>「XZRsnWTKkpprCOfmekOuXdPFKbZea1bfckCsLgG3/go =」,「utf8」=>「\ 342 \ 234 \ 223 「} 教育負荷(0.9毫秒)選擇」教育「。*從」教育「在哪裏」教育「。」ID「IN(1,2)
我想我的問題是在f.select我有:education_ids,它應該映射到education_values。
編輯表格代碼以包括多選 – 2012-04-27 17:12:36