Ruby on rails 未从集合返回的参数\u select

Ruby on rails 未从集合返回的参数\u select,ruby-on-rails,select,collections,Ruby On Rails,Select,Collections,我在将一些数据作为collection_select下拉列表的一部分传回时遇到问题,需要帮助。集合_select是用于填充订单的表单的一部分: <%= form_for(@order) do |f| %> 模型“付款类型”具有字符串“名称”,并且此关联: belongs_to :payment_type has_many :orders 以下是表格的集合部分: <div class="field"> <%= f.label :pay_type_id %>

我在将一些数据作为collection_select下拉列表的一部分传回时遇到问题,需要帮助。集合_select是用于填充订单的表单的一部分:

<%= form_for(@order) do |f| %>
模型“付款类型”具有字符串“名称”,并且此关联:

belongs_to :payment_type
has_many :orders
以下是表格的集合部分:

<div class="field">
<%= f.label :pay_type_id %><br>
<%= f.collection_select(:payment_type_id, @pay_type_collection, :id, :name, {:prompt => 'Choose one'})%>
</div>
@order = Order.new
@pay_type_collection = PaymentType.all
@order = Order.new(order_params)
@order.add_line_items_from_cart(@cart)
respond_to do |format|
下面是接受表单的“创建”操作的一部分:

<div class="field">
<%= f.label :pay_type_id %><br>
<%= f.collection_select(:payment_type_id, @pay_type_collection, :id, :name, {:prompt => 'Choose one'})%>
</div>
@order = Order.new
@pay_type_collection = PaymentType.all
@order = Order.new(order_params)
@order.add_line_items_from_cart(@cart)
respond_to do |format|

以下是我所知道的:

  • 下拉列表显示“我的付款类型”模型中列出的正确选项。它在页面源中没有带错误的字段
  • 调试器显示(order_params)传递表单的其他部分(文本区域等),但不传递集合_select数据
  • 当点击Submit按钮时,这将导致以下错误:“nil:NilClass的未定义方法`map'”

有人能帮我理解如何将我的收集参数返回控制器吗?我在任何关于collection\u select的类似问题中都找不到银弹。

您能告诉我们什么是订单参数吗?请键入raise order\u params.inspect@order=order.new(order\u params)当然可以。这返回:{“名称”=>“测试名称”,“地址”=>“测试地址”,“电子邮件”=>“testmail@testmail.com"}