как вставить нулевое значение в БД, используя radio_button и form_for formhelper - PullRequest
0 голосов
/ 23 ноября 2011

Я не хочу спорить о том, является ли нулевое значение логическим значением - я знаю, что не может. Однако я все же хочу вставить нулевое значение в (postgres) БД. Столбец имеет тип логический. Как я могу сделать это с помощью переключателя? Вот что я попробовал:

<div class="new-partner-form">
<%= form_for [:admin, matching_profile.partner, matching_profile],  :html => {:id => "edit_profile", :multipart => true} do |f| %>    
  <div class="rounded-block semi-wide clear">
    <h4>Military Service</h4>
    <%= f.radio_button :served_in_us_army, false %>
    <%= label :served_in_us_army, 'NO', {:style => 'display:inline'} %>
    <%= f.radio_button :served_in_us_army, true %>
    <%= label :served_in_us_army, 'YES', {:style => 'display:inline'} %>
    <%= f.radio_button :served_in_us_army, nil %>
    <%= label :served_in_us_army, 'NO PREFERENCE', {:style => 'display:inline'} %>
    <%= f.error_message_on :served_in_us_army %>
  </div>

Ответы [ 2 ]

0 голосов
/ 11 сентября 2012

Похоже, вам нужно не логическое, а перечисляемое значение, потому что логическое должно быть только true или false)

0 голосов
/ 23 ноября 2011

Как насчет установки значения по умолчанию для столбца с нулем?В вашей форме вместо f.radio_button просто используйте старый добрый html и задайте имя так, чтобы оно не совпадало со структурой того, что вы отправляете для действия создания.

...