Lilz
Lilz

Reputation: 4081

undefined method `stringify_keys!' ruby on rails

I have this code:

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 %>

It's giving me this error:

undefined method `stringify_keys!' for "Honda":String

I don't understand what is wrong with :car.

Upvotes: 24

Views: 36868

Answers (1)

ennuikiller
ennuikiller

Reputation: 46965

in the addcar method, you try to create a new object (create method) while transfering just a string to it (params[:car] which apparently is set to "Honda").

create expects to get an attributes hash and to stringify it's keys for the column names.

If you have a column named name in your cars table then try this:

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

Upvotes: 42

Related Questions