How do you deal with non-model property form values

I have a User ActiveRecord model that has email and password properties.
want to build a login for that has a “remember me” option. My view
like this:

<% @page_title = “Login” -%>
<%= error_messages_for ‘user’ %>
<%= form_tag %>

Email: <%= text_field("user", "email") %>
Password: <%= password_field("user", "password") %>
Automatically log me in on this computer
<%= end_form_tag %>

I would like to use the check_box FormHelper method, but remember is not
property of the User object, and I would rather not add it, since it
real make sense. What’s the best way to handle this?

Hi Paul ~

You can pass it back in a separate hash. So you could set name =
extradata[remember], then access it separately from your user items in


Hope this helps,

~ Ben

Use check_box_tag() and an instance variable that isn’t in your User
object. Like Ben says, it will still be accessible from params. In
all the form helpers with _tag endings are useful for instance variables
that are bookkeeping and not part of your real model.

Paul B. wrote:

Ok, so I did this in my index.rhtml:

<%= check_box(“form”,“remember”) %>
That looks for an instance variable called @form with a method called
‘remember’. What you probably want, judging by your controller code,

<%= check_box_tag(‘form[remember]’, params[:form][:remember]) %>

And then remember to default it on the first time in your action.


Yeah, I just set it to do this:

<%= check_box_tag(“remember”,1,params[:remember]) %>

I was using :form because that was Ben’s suggestion (he actually
using :extradata). That seems unnecessary. So I removed that hand
the controller to just call params[:remember].

Thanks for your help everyone

Ok, so I did this in my index.rhtml:

<%= check_box(“form”,“remember”) %>

And then my controller method looks like this:

def index
if request.get?
@user =
@user =[:user])[:form][:remember])
flash[:notice] = “Invalid username/password”

when i submit the form, the form.remember value of 1 prints out, if I
the remeber checkbox. But when the form renders again, the checkbox is
unchecked. Shouldn’t check_box handle setting the value of the checkbox
correctly? I also tried check_box_tag, but neither one sets the value
the checkbox correctly.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs