我知道一点 php 和 django。当我用 php 写博客时,我为我的函数创建了一个文件。例如 10 个新帖子的功能,热门访问帖子的功能等。然后我在侧栏中使用这些功能。
使用标准视图时,我可以在 django 中得到相同的结果。但是当我使用通用类视图时,我不能将顶部或新帖子传递给模板?有没有一种技术可以将它们包含在模板中并在模板中自动生成它们而不会将它们从视图中传递出去?你如何在 django 中做这样的事情?
我知道一点 php 和 django。当我用 php 写博客时,我为我的函数创建了一个文件。例如 10 个新帖子的功能,热门访问帖子的功能等。然后我在侧栏中使用这些功能。
使用标准视图时,我可以在 django 中得到相同的结果。但是当我使用通用类视图时,我不能将顶部或新帖子传递给模板?有没有一种技术可以将它们包含在模板中并在模板中自动生成它们而不会将它们从视图中传递出去?你如何在 django 中做这样的事情?
看起来你想写模板标签。例如:
@register.inclusion_tag('results.html')
def show_results(poll):
choices = poll.choice_set.all()
return {'choices': choices}
然后,您可以通过在模板中写入来包含投票结果:
{% show_results poll %}
该文档对其进行了更详细的解释,但可以使用类似的方法来显示热门帖子等。
简单的方法:
{% include 'foo/bar.html' }
如果需要对其进行参数化,则需要声明一个包含模板标签并调用它。