• Django 中 如何使用 settings.py 中的常量


    在用django 框架开发 python web 程序的时候 , 在模板页面经常会用到 settings.py 中设置的常量,比如MEDIA_URL, 我尝试过在模板页面用类似如下的方式
    程序代码 程序代码

    {{CONSTANT_NAME}}

    但 是,是没有效果的,后来只好采用了RequestContext 的方法,起始就是在 render_to_response 的时候,将settings.py 中常量,再次添加到一个 context 中去实现,这样在页面就能用另外一个名字去访问了,感觉很别扭,个人觉得肯定还有更简单的方法,只是没找到而已。下面是实现方法
    程序代码 程序代码

    from django.conf import settings
    from django.shortcuts import render_to_response

    def my_view_function(request, template='my_template.html'):
        context = {'favorite_color': settings.FAVORITE_COLOR}
        return render_to_response(template, context)

    这样就能通过在模板中使用 {{ favorite_color }} 来访问 settings.FAVORITE_COLOR 的值了。

    方法二,在国外的网站上看到的,用自定义tag 的方式来实现.
    程序代码 程序代码

    from django import template
    from django.conf import settings

    register = template.Library()

    # settings value
    @register.simple_tag
    def settings_value(name):
        return getattr(settings, name, "")


    使用方法

    程序代码 程序代码

    {% settings_value "LANGUAGE_CODE" %}


    关于在django 框架中自定义 tag 的方法,可以参考另一篇文章 :

    django 自定义 tag

    src:

    http://www.yihaomen.com/article/python/407.htm

  • 相关阅读:
    【1】Chrome
    Vue
    GitHub版本控制工具入门(一)
    Vue.js 组件笔记
    最全的javascriptt选择题整理
    网站如何实现 在qq中发自己链接时,便自动获取链接标题、图片和部分内容
    js 唤起APP
    密码加密MD5,Bash64
    HTTP和HTTPS的区别及HTTPS加密算法
    计算机网络七层的理解
  • 原文地址:https://www.cnblogs.com/flypiggy/p/5126157.html
Copyright © 2020-2023  润新知