undefined方法`stringify_keys!'铁轨上的红宝石

时间:2009-11-29 14:39:57

标签: ruby-on-rails parameters

我有这段代码:

def addcar
  @car = Car.new(params[:car])
  render :action => 'list'
end

<% @allcars.each do |cell| %>
  <p>
    <%= link_to cell.to_s, :controller => 'car', :action => 'addcar', :car => cell.to_s %>
  </p>
<% end %>

它给了我这个错误:

  

未定义的方法`stringify_keys!'为“本田”:字符串

我不明白:car有什么问题。

1 个答案:

答案 0 :(得分:42)

addcar方法中,您尝试创建一个新对象(create 只传递一个字符串(params[:car],显然设置为“本田”)。

create期望得到一个属性哈希并将其字符串化为 列名。

如果您的汽车表中有一个名为name的列,请尝试以下操作:

@car = Car.new(:name => params[:car])