- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有 PHP 背景,我知道在框架中的大多数地方都可以访问常量,我认为在 django 中也是如此。我也试图在 django 中获得该 URL,但我试图从 django.contrib 中获得它。我试图利用 django 的 Site 类并导入它。但问题是在加载 settings.py 时我无法导入任何 django contrib。文件。
那么我怎样才能自动拥有 SITE URL 以便我可以在任何地方使用,无论是在模板中还是在其他地方。这样做的最佳方法是什么?任何 python 实用程序都可以这样做吗?
最佳答案
例如,无论您在 settings.py 中定义什么
SITE_URL = 'http://www.mydomain.com'
可以在所有与 Django 相关的代码中访问:
from django.conf import settings #this imports also your specific settings.py
print settings.SITE_URL
或者只是Site.objects.get_current().domain
如果您希望能够在模板中访问它,您可以自己制作 template context processor .将其放入 my_project/content_processor.py
from django.conf import settings
def my_site_url(request):
return {
'SITE_URL': settings.SITE_URL,
}
或者如果你想要它是动态的:
from django.conf import settings
def my_site_url(request):
return {
'SITE_URL': Site.objects.get_current().domain,
}
并将其添加到 settings.py 中的 TEMPLATE_CONTEXT_PROCESSORS 变量。它看起来应该与之后的相似:
TEMPLATE_CONTEXT_PROCESSORS =("django.contrib.auth.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.i18n",
"django.core.context_processors.media",
"django.core.context_processors.static",
"django.core.context_processors.tz",
"django.contrib.messages.context_processors.messages",
"my_project.context_processors.my_site_url",
)
完成了。
关于python - 一种在 settings.py 中设置 Django SITEURL 常量的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12333548/
我使用 locale 过滤器动态配置多语言设置。其中获取子域名确定语言。 function load_custom_language($locale) { // get the locale
这个问题有历史值(value),所以我稍微更新一下。这是 Google 中“webpack-dev-server wordpress 重定向”的最佳结果。虽然公认的解决方案适用于 Webpack 2,
希望你能帮助我。由于某种未知的原因,每次我登录管理员并更新站点时,“siteurl”和“home”路径总是更改为以前使用的“testsubdomain”。我已经聘请了一位开发人员,他放弃告诉我他不是
我为客户安装了 Wordpress,她更改了域名。由于以前的域名注册已失效,我无法再从以前的域名访问该网站的任何部分,因此我将虚拟主机更改为我的域之一的子域,暂时可以访问它,但只能获取其主页,所有菜单
我有 PHP 背景,我知道在框架中的大多数地方都可以访问常量,我认为在 django 中也是如此。我也试图在 django 中获得该 URL,但我试图从 django.contrib 中获得它。我试图
我有一个客户,他的 wordpress 网站被 iframe 骗子攻击了两次。每次他们将 iframe 代码注入(inject)网站内容时。 这是最后一次,今天,他们只是将 wp_options 中的
我是一名优秀的程序员,十分优秀!