首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >布尔Enum抛出操作不能为Rails-Admin中的虚值空白

布尔Enum抛出操作不能为Rails-Admin中的虚值空白
EN

Stack Overflow用户
提问于 2014-11-04 18:28:20
回答 2查看 1.7K关注 0票数 4

我有一个rails_admin表单(与rails4 ruby2.0一起使用),它有一个布尔字段: action,它象征信用或借方行为。

我已经为字段使用了枚举,该字段在选择Credit(true)选项时工作。但是在保存“操作不能是空白”时抛出一个验证错误。

我有以下代码。

代码语言:javascript
复制
field :action, :enum do
  enum do
    [['Credit', true], ['Debit', false]]
  end
end

我还尝试通过使用枚举作为一种方法来交换它的用法。

代码语言:javascript
复制
def action_enum
  [['Credit', true], ['Debit', false]]
end

但到目前为止,一切都不起作用。我试着浏览了rails_admin wiki:admin/wiki的文档,但没能解决问题。

有人能不能提出解决办法,或者指出我错过了什么??

EN

回答 2

Stack Overflow用户

发布于 2019-05-30 23:41:17

对于那些试图验证是否存在Boolean的人,您不能使用presence: true。您需要使用inclusion: { in: [ true, false ] }

出于某种疯狂的原因,这是:false.present? #=> true

根据https://github.com/rails/rails/issues/22962

票数 5
EN

Stack Overflow用户

发布于 2014-11-05 16:33:41

明白了!

这是验证:在字段操作上存在=> true,该操作与虚值失败。因为false.present?总是返回false。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26742368

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档