2014-05-03 33 views
0

我正在尝试使用简单表单宝石来填充使用关联的选择框。我有两个相关的型号:job_categoryjob_typeRails简单表格宝石没有设置关联编号

job_category的has_many job_types

工作类型属于job_category

我用这种形式成功地填充选择框,

= simple_form_for(@job_type) do |f| 
    = f.error_notification 

    .form-inputs 
    = f.input :name 
    = f.association :job_category, :include_blank => false, :label_method => :name 
    .form-actions 
    = f.button :submit 

,它是创建一个job_type对象时,我打我的创作路线,但在job_typejob_category_id字段没有被设置。

当我进入命令行模式,我能够成功地创建使用

JobType.create(name: "Test", job_category_id: 1) 

检查使用Chrome developer tools后一个新的作业显示job_category_id被发送过的post的一部分,所以我不我不明白为什么这不起作用。

+0

您可以共享提交此表单时生成的服务器日志吗?您可以从运行'rails server'的终端获取它。将其添加到问题中。 –

+0

你能向我们展示你的创建行为引用的参数方法吗?你在使用accepting_nested_attributes_for吗? –

回答

0

如果您正在使用Rails 4,您是否确认您已在JobTypesController中的job_type_params方法中添加:job_category_id

如果您还没有,请确保:job_category_id在您的job_type_params方法中。

如果您使用的是< Rails 4,请将:job_category_id添加到您的attr_accessible

+0

这样做了。我的params方法允许:job_category,它是字段,但不是job_category_id。 – user3600170