2016-05-17 37 views
0

Rails中传递参数时select运行到一个问题:数错误的参数(5 1..4)在Rails中选择标签

错误的参数数目(5 1..4)

下面的代码:

<dd><%= f.select :codes, options_for_select(CarParts::CODES), {include_blank: "Select Code"}, {required: true}, {}, {onchange: "myFunc(this);"} %></dd> 

取下空的哈希返回相同的错误。虽然删除include_blankrequired属性,同时保持它似乎正常工作。有什么建议么?

+2

['select'](http://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#method-i-select)方法最多需要四个参数,其中最后两个是散列。你传递了六个参数,其中四个是哈希值。 “删除空的散列”仍然会给你带来太多争论。我建议阅读链接文档并缩小实际想要传递的值。 –

+0

谢谢@约旦 - 你有任何其他建议如何实现这一点与保持所有的功能? – ethrowin

+0

@ethrowin目前还不清楚你认为你在这里获得什么样的功能。您不必将每个键/值对的属性作为自己的散列。分组他们。该文档将告诉你哪些选项进入哪个参数。 – meagar

回答

0

使用此:

<dd><%= f.select :codes, options_for_select(CarParts::CODES), { include_blank: "Select Code" }, { required: true, onchange: "myFunc(this);"} %></dd> 

include_blank进去optionsrequiredonchange是HTML选项。以下是Form Helper select的API文档供参考和示例。