使用带有 CherryPy 的 Genshi 模板引擎,我需要有一个特定于上下文的站点导航,它为登录的用户显示不同的菜单。
用户由 CherryPy 会话标识。
为登录用户显示不同菜单的最佳方式是什么?
我们检查用户是否登录...
import cherrypy
from genshi.template import TemplateLoader
@cherrypy.expose
def index(self):
tmpl = loader.load('index.html')
if(cherrypy.session.get('_cp_Email')):
return tmpl.generate(title='Geddit').render('html', LoggedIn=True)
else:
return tmpl.generate(title='Geddit').render('html', LoggedIn=False)
你的模板想要这样的东西......
if (LoggedIn) {
# Logged In menu
} else {
# not Logged In menu
}
如果是,我们向模板发送一个变量以显示注销而不是登录。
我们将其用于身份验证...
http://tools.cherrypy.org/wiki/AuthenticationAndAccessRestrictions
出于安全原因包括注释。希望这可以帮助!