扩展Django Flatpages以接受模板标签

发布于 2021-01-29 15:13:00

我在我们网站上的很多内容中都使用了django扁平化页面,我想将其扩展为在内容中也接受django模板标签。

我找到了这个代码段,但经过深思熟虑之后,我还是无法使用它。我是否假设您将django平板应用程序太需要“子类化”才能正确工作,这是否正确?这是最好的方法吗?我不太确定如何构造它,因为我真的不想直接修改django发行版。

关注者
0
被浏览
51
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    1. 一个简单的页面视图将通过为每个页面加载模板来呈现模板标签:

    url.py

    url(r'^page/(?P<slug>.*)/$','my_app.views.page_detail', name='page_url'),
    

    my_app/views.py

    def page_detail (request, slug):
        return render_to_response('page/' + slug + '.html', {},
                                  context_instance=RequestContext(request))
    

    2.
    另一种将平面页面存储在数据库中的方法是像这样在模板中使用“模板评估标签” 。

    编辑
    您只需要像这样修改平面模板

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
        "http://www.w3.org/TR/REC-html40/loose.dtd">
    <html>
    <head>
    <title>{{ flatpage.title }}</title>
    </head>
    <body>
    {% load evaluate_tag %} 
    {% evaluate flatpage.content %} 
    </body>
    </html>
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看