如何使基于活动记录的表中的时间戳列不需要值?
即现在当您运行迁移时:
class CreateInstructors < ActiveRecord::Migration
def change
create_table :instructor do |t|
t.name
t.timestamps
end
end
end
和created_at
不updated_at
接受空值。您如何仍然保留时间戳但允许空值?
如何使基于活动记录的表中的时间戳列不需要值?
即现在当您运行迁移时:
class CreateInstructors < ActiveRecord::Migration
def change
create_table :instructor do |t|
t.name
t.timestamps
end
end
end
和created_at
不updated_at
接受空值。您如何仍然保留时间戳但允许空值?
不赞成将时间戳记为空,这是没有意义的。但是如果你愿意,你可以让你的迁移接受 nil 值
t.column :created_at , :timestamp, :null => true
t.column :updated_at , :timestamp, :null => true
然后你可以创建一个后回调或任何你想让它为空的条件
为什么要为 created_at 或 updated_at 时间戳设置空值?
我建议创建另一个字段来处理您正在处理的任何情况,可能是布尔值或附加时间戳字段,而不是重新利用这些保留字段。
但是我不知道你的用例......