2015-04-14 48 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可能会变得混乱)。这个插件允许你指定一个属性列表(或 例外的所有属性),如果它们在保存模型之前为空,它们将被转换为零。

相关问题