Rails的save和update方法默认都会将updated_at更新为当前时间,并且不允许手动设置,但是有些情况下,我们可能希望只更新记录的某个字段,而不希望updated_at被更新,比如显示帖子的时候增加帖子的查看次数,这可以通过设置model的record_timestamps属性实现: Post.record_timestamps=false 但是因为record_timestamps是一个类变量,因此改变这个值会影响到所有Post的保存,如果在同一时间有用户确实修改了Post的内容或者标题,updated_at也将不会更新。 Neeraj在这篇帖子里提供了一个方法,只修改当前对象的record_timestamps属性,在保存完后再进行恢复: module ActiveRecord class Base def save_without_timestamping class
