gpt4 book ai didi

ruby-on-rails - bool 值的Rails范围

转载 作者:行者123 更新时间:2023-12-04 04:57:40 25 4
gpt4 key购买 nike

当您在带有Active Record的Rails中使用 bool 值时,如果您询问(说)visible?,它将检查该列是否为true。如果是falsenil,则visible?将返回false

您如何确定 bool 值的范围以询问?方法是否返回false?我有这个:

scope :visible, where(hide: [nil, false])

但我想知道是否有更清洁的方法。有没有一种方法可以写此范围而无需明确说明 nilfalse?如果我们是相反的话,我们可以写
scope :invisible, where(hide: true)

看起来比较干净。 可见范围的最佳代码是什么?

最佳答案

在列上使用默认值。这样做有两个好处:在数据库中只有两个可能的值,这使您的代码更容易。 bool 值是对还是错,不是nil,也许不是foobar。真假。 “我宁愿避免不得不严格地将数据库设置为false/true”,这是 bool 型列的一个有争议的论点。

如果您需要两个以上的状态,请使用状态机或类似的设备-然后它不再是 bool 型列/状态。

关于ruby-on-rails - bool 值的Rails范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11305587/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com