Rails3 form_for hidden_​​field undefined方法'合并'

问题描述:

我试图在form_for中放置hidden_​​field在ActionView助手错误中在黄瓜内部崩溃。还有一些关于FixNum的内容,它逃避了我,因为我没有通过源代码挖掘。我prices_controller表明这一点:Rails3 form_for hidden_​​field undefined方法'合并'

@price = Price.new 
    @commodity = Commodity.find(params[:id]) 

我想和这个hidden_​​field价格和商品之间的联系:

<%= form_for (@price), :url => prices_path do |f| %> 
    <% f.hidden_field :commodity_id, @commodity.id %> 
. 
. 
<div class="actions"> 
<%= f.submit "Submit" %> 
    </div> 

看着的form_for API和上面应该工作。在stackoveflow上读取其他回复,我已经将hidden_​​field放在表单的自己的div中,添加了一个Hidden_​​field_tag,并将它放在提交行之前的动作div中。看着合并消息,我想它不喜欢关于该行的东西,但对我来说似乎还可以。 commodity_id字段为匹配字段,sam

如果您可以粘贴错误消息本身以及跟踪的相关行,它可以帮助我们。现在,我看到的唯一情况是f.hidden_field之前的ERB标签应该是<%=,由于我没有使用ERB,所以我不确定。对于它的价值,合并通常与Hash对象一起使用。也许它可以指向你在正确的方向

编辑好吧,我明白了。你必须写f.hidden_field :commodity_id, :value => @commodity.id

+0

未定义的方法'合并'为111:Fixnum(ActionView :: Template :: Error) /Users/sam/.rvm/gems/ruby-1.9.3-p0/gems/actionpack-3.1.3/lib/ action_view/helpers/form_helper.rb:1348:在'objectify_options' /Users/sam/.rvm/gems/ruby-1.9.3-p0/gems/actionpack-3.1.3/lib/action_view/helpers/form_helper.rb :1301:在'hidden_​​field' ,我刚刚添加了“=”erb语言来尝试。它似乎也失败了。谢谢。 – sam452 2012-02-14 15:19:08

+0

这里有更多的错误味精。我应该发布更多吗? – sam452 2012-02-14 15:19:42

+0

我想我明白了 - 查看更新后的消息 – ksol 2012-02-14 15:22:48