论坛首页 编程语言技术论坛

关于updated_at(updated_on)的问题

浏览 2896 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-10-23  
表中有updated_at和last_viewed_at两个字段,原意是想记录修改时间和最后访问时间.

于是在controller中做了一个after_filter:
 
  after_filter:update_last_viewed,:only => "show"
  


相应的方法:
 
   def update_last_viewed
     @group.update_attributes(:last_viewed => Time.now)
   end
   def show
     @group = Group.find(params[:id])
   end
  


现在问题来了,使用update_attributes方法更新last_viewed_at字段,可是同时updated_at字段也随之更新了...
解决方法探究中...
   发表时间:2007-10-23  
def update_last_viewed  
  @group.last_viewed_at = Time.now
  Group.update_all ['last_viewed_at = ?', Time.now], ['id = ?', @group.id]
end  
0 请登录后投票
   发表时间:2007-10-23  
robbin 写道
def update_last_viewed  
  @group.last_viewed_at = Time.now
  Group.update_all ['last_viewed_at = ?', Time.now], ['id = ?', @group.id]
end  
没问题了!!

多谢老大指点!
0 请登录后投票
   发表时间:2007-10-23  
def update_last_viewed        
  Group.update(@group.id,:last_viewed_at=>Time.now)
end 
0 请登录后投票
   发表时间:2007-10-24  
ddtlby 写道
def update_last_viewed        
  Group.update(@group.id,:last_viewed_at=>Time.now)
end 


你这种写法是不行的,会更新group的所有column。
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics