我希望有两个类型:boolean
列,让我们说X和Y,其中Y部分依赖于X.当X为真时,Y可以是true或false,但是当X是假的,Y必须是假的。这可能吗?
class AddPrivacyColumnsToPosts < ActiveRecord::Migration
def change
add_column("posts", "public", :boolean, :default => true)
add_column("posts", "collectable", :boolean, :default => true)
end
end
其中public
为X,collectable
为Y,即只能收集公开信息。如果帖子设置为私有(public
为false时),则collectable
应自动设置为false。
答案 0 :(得分:2)
我会在保存之前添加一个回复帖子
before_save :set_collectable
def set_collectable
if !public?
self.collectable = false
end
end