登录 | 注册
   首 页   分享小组   同 城   即时贴  
     高级搜索
心得分享:判断后台用户是否登录的 middleware . . .  
duma   楼主 

先判断当前页是否==后台登录页面,如果==,就中断。然后,
只要链接以'/background/'开头,并且 session没中有后台用户信息 ,那么在session中记录下登录成功后需要跳转的页面,并跳转到登录页面。
非常简陋的功能,可以根据自己的需求丰富更多的功能。
抛砖引玉,求更好的方法。

from django.http import HttpResponseRedirect

class BGauth(object):
----def process_request(self, request):
--------curl = request.path
--------loginurl = '/background/login/'
--------isbg = curl.startswith('/background/')
--------if curl == loginurl: return
--------if not request.session.get('bguser','') and isbg:
------------request.session['nexturl'] = curl
------------return HttpResponseRedirect(loginurl)


小亨   发表于 2008-06-25 12:41:10 1楼 

在session中记下nexturl,这个不错,这样登录后就不会到缺省页面了。



duma   发表于 2008-06-25 12:55:18 2楼 

登录成功后,还可以再删掉 nexturl
def login(request):
----#do something......
----try:
--------del request.session['nexturl']
----except:
--------pass
----return #.....



小亨   发表于 2008-06-25 12:57:10 3楼 

这点阿瓜做的不好,有时间我改进一下。



duma   发表于 2008-06-25 13:13:43 4楼 

谦虚,阿瓜的性能还是不错,不管我什么时候访问,速度都是 嗖嗖~ 的!
阿瓜的阿里妈妈广告太便宜了吧,为什么不支持图片呢?



小亨   发表于 2008-06-25 13:29:49 5楼 

呵呵,你怎么知道广告价格?
怕图片影响速度。





Django


返回小组讨论




©aggua.com 京ICP备07040486号 关于阿瓜 | BLOG | 排行榜 | 常见问题 | 友情链接
インプラント インプラント京都 インプラント費用 レーシック 審美歯科 わきが 脱毛 漢方 薬剤師求人 インプラント