【问题标题】:Pass list of links to Django Template将链接列表传递给 Django 模板
【发布时间】:2014-08-14 12:30:47
【问题描述】:

我有一个我在我的 settings.py 文件中通过以下方式导入的 url 列表:

from myproject.image_folders_link import Links

现在我的image_folders_link 包含以下常量:

MY_image_doctors_link = "http://www.mywebsite.com/images/doctors"

MY_image_patients_link = "http://www.mywebsite.com/images/patients"

现在我想在我的 Django 模板中使用它。我怎样才能通过这个?

【问题讨论】:

标签: python django templates django-templates django-views


【解决方案1】:

如果您想在所有模板中使用一组常量,您应该write a "context processor"

我不太明白您要添加哪些变量,但通常您会在名为context_processors.py 的应用程序中创建一个新文件:

from myproject.image_folders_link import Links

def template_links(request):
    return {
        "MY_image_doctors_link": "http://www.mywebsite.com/images/doctors",
        ...
    }

现在将其添加到您的settings.py 中的TEMPLATE_CONTEXT_PROCESSORS 设置中:

TEMPLATE_CONTEXT_PROCESSORS = (
...
'myapp.context_processors.template_links',
)

您可以在所有模板中调用这些变量:

{{ MY_image_doctors_link }}

【讨论】:

  • 好的,明白了。但是{{ MY_image_doctors_link }} 不会打印链接。我也在我的模板中使用 AngularJS。我需要定义一些东西吗?由于 AngularJS 正在显示这些数据。
  • 我也使用从我的视图返回HttpResponse json 转储
猜你喜欢
  • 2012-09-27
  • 2011-08-17
  • 2012-11-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-02
  • 2021-07-26
  • 1970-01-01
相关资源
最近更新 更多