我知道rails中的updated_at和created_ate。 但我感兴趣的是能够在更新另一个字段时更新模型中的字段。这是我尝试过的:
在我的模型中:
protected
def update_email_sent_on_date
if self.send_to_changed?
self.date_email_delivered = DateTime.now
end
end
并在我的代码中的一个位置更新了相关字段:
distribution.send(:update_email_sent_on_date)
问题是,这根本不对我的db表做任何事情。我甚至试图取消对“send_to”的检查,但仍然没有。
我做错了什么?
答案 0 :(得分:1)
进行更改后,您无法保存。
将方法更改为:
def update_email_sent_on_date
if send_to_changed?
self.date_email_delivered = DateTime.now
save
end
end
或者在调用之后保存模型:
distribution.update_email_sent_on_date
distribution.save