我目前正在从Django切换到Turbogears 2.1,并且遇到了一些我在Turbogears文档中找不到答案的问题。如果tg开发人员阅读了这篇文章,让我告诉您Django具有超过TG的最佳功能之一就是其文档!

1)如何访问mako模板中的请求(用户?)对象以检查用户是否已通过身份验证?例如

如果(request.user.is_authenticated)
  “退出链接”
其他
  “登录链接”

2)一个相关的问题(因为用户对象在Django中通过上下文处理器公开给模板)。有没有一种方法可以将数据添加到请求上下文中?例如,在我的Django应用程序中,如果用户通过context_processors.py文件中的定义登录,然后为该用户添加一个缓存的通知字典,然后将该def包含在设置文件中的TEMPLATE_CONTEXT_PROCESSORS元组中。

3)这可能有其自己的问题,但我想我想把它扔出去,以防有人提出快速建议。我使用Netbeans作为我的IDE,它没有为mako文件提供代码着色或工具。但是,尝试使用.html扩展名重命名模板会引发mako错误。有什么办法解决这个问题,还是我只能使用纯文本和.mak扩展名?

非常感谢

最佳答案

我已经从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语法突出显示)。

10-06 09:12