2015-04-14 73 views
2

我有以下代碼,它允許用戶選擇一種貨幣而不是繼承一種貨幣。導軌設置選擇值爲空而不是空白

%dd= user_field(@user, :remuneration_currency, :type => :select, :collection => REMUNERATION_CURRENCIES) 

我需要允許人們將此字段設置回NULL,這意味着用戶將拿起他們賬戶的默認貨幣。但是,如果我將代碼更改爲...

%dd= user_field(@user, :remuneration_currency, :type => :select, :collection => REMUNERATION_CURRENCIES, :blank => 'Company Default') 

然後它將該值設置爲空白(正如它在錫上所示)而不是數據庫中的NULL。如何將「公司默認」值設置爲NULL而不是空白。

+0

Gareth,你試過我的解決方案嗎? – Liyali

回答

1

你最好的選擇是使用寶石nilify_blanks這確實你在尋找什麼:

在Rails從形式保存模型時,而不是由用戶提供 值,一個空字符串記錄到數據庫而不是 NULL,因爲許多人會更喜歡(混合空白和NULL可能會變得混亂)。這個插件允許你指定一個屬性列表(或 例外的所有屬性),如果它們在保存模型之前爲空,它們將被轉換爲零。

相關問題