У меня есть строковый столбец в моей базе данных, который является "исполнителем" или "слушателем", и я хочу, чтобы пользователь мог выбирать, какой строкой будет заполняться столбец, установив соответствующий флажок. Как бы я это сделал?
Вы должны использовать переключатель здесь:
# Imagine it is User model and user_type field <%= form_for User.new do |f| %> <%= f.radio_button :user_type, "artist" %> <%= f.radio_button :user_type, "listener" %> <% end %>
Вы должны использовать радио-кнопки в этом отношении. Также убедитесь, что эта логика включена в модель (проверки).
# model class User TYPES = %w(artist listener) validates_inclusion_of :user_type, :in => TYPES end # view <%= form_for :user do |f| %> <% User::TYPES.each do |type| %> <%= f.radio_button :user_type, type %> <% end %> <% end %>
f.check_box :my_field, {}, "artist", "listener"
В этом случае my_field будет "исполнителем", когда он отмечен, и "слушателем", если не отмечен.
my_field