我目前正在从Django切换到Turbogears 2.1,并且遇到了一些我在Turbogears文档中找不到答案的问题。如果tg开发人员读到这个,那么让我告诉你,Django对TG的最佳功能之一就是它的文档!
1)如何访问mako模板中的请求(用户?)对象以检查用户是否已通过身份验证?例如
if(request.user.is_authenticated) '退出链接' 其他 '登录链接'
2)一个相关的问题(因为用户对象在Django中通过上下文处理器暴露给模板)。有没有办法将数据添加到请求上下文?例如,在我的Django应用程序中,如果用户通过context_processors.py文件中的定义登录,然后在设置文件中的TEMPLATE_CONTEXT_PROCESSORS元组中包含该def,则为用户添加缓存的通知字典。
3)这可能有其自身的问题,但我认为如果有人提出快速建议,我会把它扔进去。我使用Netbeans作为我的IDE,它没有为mako文件提供代码着色或工具。但是,尝试使用.html扩展名重命名模板会引发mako错误。有什么方法可以解决这个问题,还是我坚持使用纯文本和.mak扩展名?非常感谢
答案 0 :(得分:1)
我已经从Turbogears 1.0迁移到了Django。可能无法回答所有这些,但我相信一般TG2试图保持与TG1非常相似的东西。希望指出它在TG 1中是如何工作的,可能会有所帮助......
1)在Turbogears 1.0中,您将使用tg.identity.anonymous查看用户是否已登录。快速浏览文档,可以看出它很可能仍然是相同的。
2)Turbogears称这种东西为stdvars - 有关TG 1的详细信息,请参阅此处http://docs.turbogears.org/1.0/stdvars
3)抱歉不知道,但我认为你可以告诉Netbeans将.mak视为html文件的另一个扩展(因此它使用html语法高亮显示)。