I have the following piece of code
%br
= f.label :active, 'Status'
= f.select :active, ['Active','Inactive']
Symbol :active is a boolean type var. How can i match Active => 1/True, and Inactive => 0/False , for the database adding.
Sorry for the newbie question, but i can't figure it out.
You can provide a pair of values for each options: first will be used as label (inner text of <option>
tag), second will be used as a value
attribute:
= f.select :active, [['Active', true], ['Inactive', false]]
It'll render something like:
<select name="model[active]"> <option value="true">Active</option> <option value="false">Inactive</option> </select>
Have a look at the docs for select
and options_for_select
.
A small extension of the earlier answer, if you're using a dropdown.
I needed to use "options_for_select." Also, ":selected" stores the value for the next time you return to the form.
<%= f.select(:active, options_for_select([['Active', true], ['Inactive', false]], {:selected => @symbol.active}),:prompt => "Select") %>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With