如何覆盖django模板渲染方法处理

时间:2009-09-17 00:25:44

标签: django caching templates django-templates

在我的应用程序中,我发送定期的cron和后台任务请求以刷新页面缓存。虽然从视图中发送force_refresh kwarg很容易,但是没有明显的方法可以将force_refresh kwarg发送到从模板访问的方法。我正在使用大量这些,并且从视图开始调用所有这些方法会使事情变得更复杂。

所以我一直在尝试覆盖模板渲染方法,以便在访问方法时传入force_refresh kwarg,如果给定的响应是针对后台任务请求的话。

我意识到将这个kwarg添加到被调用的所有方法可能只会导致意外问题,如果你有任何关于更好的处理方法的建议,那么try / except ArgumentError块将不是一个强大的解决方案这个(希望除了从视图中访问这些方法之外!),听听它们会很有用。

1 个答案:

答案 0 :(得分:0)

很抱歉,您的用例正是视图功能的用途。

在视图功能中,您收集所有数据。从中您可以创建一个模板将使用的最新数据字典。

所有逻辑都在视图中。模板处理的次数很少。