2010-03-13 55 views
5

当访问者通过保存的会话进行身份验证时,它看起来像Django不更新auth_user模型中的last_login字段。auth_user模型中的Django“last_login”属性

因此,在这种情况下,我如何实现类似于每个SO用户的个人资料页面上的“已看到”字段的功能。

回答

10

假设你有你的自定义用户配置模型last_seen_on和last_activity_ip场,这里是一个简单的中间件类,你想要做什么:

import datetime 

class LastSeen(object): 

    def process_request(self, request): 
     user = request.user 
     if not user.is_authenticated(): return None 
     up = user.get_profile() 
     up.last_seen_on = datetime.now() 
     up.last_activity_ip = request.META['REMOTE_ADDR'] 
     up.save() 
     return None