Genshi和CherryPy中的特定于上下文的导航

时间:2014-01-13 22:15:39

标签: python cherrypy genshi

使用带有CherryPy的Genshi模板引擎,我需要一个特定于上下文的网站导航,为登录用户显示不同的菜单。

用户由CherryPy会话识别。

为登录用户显示不同菜单的最佳方式是什么?

1 个答案:

答案 0 :(得分:1)

我们检查用户是否已登录...

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
            }

如果他们是,我们将一个变量发送到模板以显示Log Out而不是Login。

我们将此用于身份验证...

http://tools.cherrypy.org/wiki/AuthenticationAndAccessRestrictions

出于安全原因包括评论。 希望这有帮助!