Database is not updating after the Active Record Migration.

21 views
Skip to first unread message

Cameron Diggs

unread,
Mar 24, 2014, 4:50:45 PM3/24/14
to rubyonra...@googlegroups.com
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| %>
....
...
...

<div class="field">
  <%= f. label :need_it &><br>
  <%= f.check_box :need_it %>
</div>

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

Abdulsattar Mohammed

unread,
Mar 25, 2014, 4:35:42 AM3/25/14
to rubyonra...@googlegroups.com
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.


--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-ta...@googlegroups.com.
To post to this group, send email to rubyonra...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/b84fa6c6-4520-47ba-988e-f7bd8ac633cc%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Regards,
Abdulsattar Mohammed

Colin Law

unread,
Mar 25, 2014, 4:51:02 AM3/25/14
to rubyonra...@googlegroups.com
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
Reply all
Reply to author
Forward
0 new messages