Database is not updating after the Active Record Migration.

Hello.

I created a simple database to test adding a column in an active record migration. Using phpMyAdmin and ROR, this is the code I used for the migration:

class AddColumns < ActiveRecord::Migration

def self.up

add_column :users, :need_it, :boolean

end

def self.down

remove_column :users, :need_it

end

end

the migration went successfully, as I can see the newly created column in phpMyAdmin.

The column is, trying to be, mapped to a checkbox, located in the _form.html.erb file:

<%= form_for(@user) do |f| %>

<%= f. label :need_it &>

<%= f.check_box :need_it %>

<% end %>

But when I enter a new user and select the checkbox, or edit a current user’s checkbox field, the new value doesn’t show in the database (MySQL).

What am I missing?

Thanks.

You probably didn’t add :need_it to the strong parameters (params.require(:users).permit(:need_it)) or if you’re using Rails 3.x, you didn’t add it to attr_accessible.

The first technique when looking for any bug is to determine the area of code that is failing. Look in log/development.log and you will see the parameters passed when you submit the form. If the checkbox value is not there then it is the view that is at fault, if the checkbox is there then it is the controller code that is in error somewhere.

Colin