V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
le0rn0
V2EX  ›  问与答

请教下 Django 模板继承的一个问题

  •  
  •   le0rn0 · 2015-08-17 18:49:04 +08:00 · 1864 次点击
    这是一个创建于 3176 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如父模板之中存在全站的导航,每个页面需要这些导航,

    而这个父模板中的导航内容是从数据库中读取的,

    也就是说每次渲染继承它的模板都要传一个 list 的参数(导航列表),

    感觉走了弯路呀,请问有其他方法来实现吗?

    8 条回复    2015-08-17 22:22:08 +08:00
    guoqiao
        2
    guoqiao  
       2015-08-17 20:11:37 +08:00
    楼上正解
    virusdefender
        3
    virusdefender  
       2015-08-17 20:34:39 +08:00
    我是自己写了一个 template tag 实现的
    le0rn0
        4
    le0rn0  
    OP
       2015-08-17 20:36:55 +08:00
    @delo 感谢,请问下 Jinjja 模板也能实现吗
    le0rn0
        5
    le0rn0  
    OP
       2015-08-17 20:37:11 +08:00
    @virusdefender 能否详细说下?谢啦
    virusdefender
        6
    virusdefender  
       2015-08-17 22:13:07 +08:00
    @le0rn0 你不就是需要一个类似全局变量的东西么~

    # coding=utf-8
    from django import template
    register = template.Library ()


    @register.simple_tag
    def show_website_info (name ):
    return {"website_name": "xxx", "website_footer": u"xxx"}[name]

    然后在模板里面 {% show_website_info "website_name" %} {% show_website_info "website_footer" %}

    https://docs.djangoproject.com/en/1.8/howto/custom-template-tags/
    glasslion
        7
    glasslion  
       2015-08-17 22:20:15 +08:00
    context processor 正解
    le0rn0
        8
    le0rn0  
    OP
       2015-08-17 22:22:08 +08:00
    @virusdefender 多谢!就是这种类似全局变量的东西


    @delo
    @guoqiao
    那文档没太看懂哎
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1198 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 23:35 · PVG 07:35 · LAX 16:35 · JFK 19:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.