2011-11-22 77 views
0

我不想爭論有關它是否爲空值可以被視爲布爾值 - 我知道它不能。然而,我仍然想要在(postgres)數據庫中插入一個空值。該列是布爾類型的。我怎樣才能用一個單選按鈕來實現這一點?這是我試過的:如何使用radio_button和form_for formhelper將空值插入到數據庫中

<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> 

回答

0

那麼只需要爲null列設置一個默認值呢?在你的表單中,不要使用f.radio_button,而只需使用普通的舊html,並設置名稱,以便它不會與您爲創建操作提交的內容相結合。

+0

好,這是數據庫的設置方式 - 爲外地有默認設置爲NULL值。但是,我們一直做出糟糕的選擇,並且使單選按鈕成爲表單的必要部分,因此某些表單插入了t或f,用戶需要將其切換爲nil。現在,它通過使用''「'值來工作 – Ramy

0

看起來你不必布爾但枚舉值,因爲布爾應該是真或假的只)

相關問題