我是Rails 4.0的新手,在我的表单中使用集合选择有问题。我有一个协会,其中一个合同有许多任务订单。当创建一个新的任务订单时,我希望表单有一个合同DDL可供选择。
我的合同表有以下属性:contractIdcontractName
我的task_orders表有以下属性:task_orderIdcontract_Id <——这是契约表的外键引用
我阅读了Rails API,我的for目前看起来像这样:
<div class="field">
<%= f.label :contract_Id %><br>
<%= collection.select(:TaskOrder, :contract_Id, :Contract.all, :id, {}, {}) %>
</div>
请帮忙!谢谢!
试一试
<div class="field">
<%= f.label :contract_Id %><br>
<%= collection_select(:task_order,:contract_Id,Contract.all, :id, {}, {}) %>
</div>
你写的 :TaskOrder
是错误的。 Model instance
应该用作first param
,而不是 Class Name
,而且它是collection_select
而不是collection.select
查看API
当与form helpers
一起使用时,您应该像这样使用collection_select
<%= f.collection_select(:contract_id,Contract.all, :id,:id,{:include_blank => true}) %>