Match an option in select form with boolean values

前端 未结 2 1748
孤独总比滥情好
孤独总比滥情好 2021-02-12 13:31

I have the following piece of code

%br
= f.label :active, \'Status\'
= f.select :active, [\'Active\',\'Inactive\']

Symbol :active is a boolean

相关标签:
2条回答
  • 2021-02-12 14:11

    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") %>
    
    0 讨论(0)
  • 2021-02-12 14:17

    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.

    0 讨论(0)
提交回复
热议问题