django模板中的css
Posted
技术标签:
【中文标题】django模板中的css【英文标题】:css in django templates 【发布时间】:2012-09-19 14:18:31 【问题描述】:我在 django 模板中使用 css 时遇到问题,
在我的settings.py
我有这个:
BASE_DIR = os.path.abspath(os.path.dirname(__file__) + '/')
STATIC_URL = BASE_DIR + '/static/'
在我的路径中,我有文件夹 "static/css/home_css.css"
在我的模板 home.html 我有链接标签:
<link rel="stylesheet" type="text/css" href=" STATIC_URL css/home_css.css" media="all" />
但它不能用于渲染 de css。 如果有人知道会发生什么,请
【问题讨论】:
为什么你的路径有.css文件? 这只是我的css所在的文件夹“static/css/home_css.css” 【参考方案1】:STATIC_URL
不应指向文件系统中的路径。 STATIC_ROOT
应该。
import os
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = "/static/"
【讨论】:
【参考方案2】:在您的settings.py
中添加'django.core.context_processors.static',
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.request',
'django.contrib.messages.context_processors.messages',
)
编辑
如果您正在使用本地开发服务器,您的urls.py
中将需要这样的内容:
(r'static/(?P<path>.*)$', 'django.views.static.serve', 'document_root': '%s' % os.path.join(os.path.dirname(os.path.abspath(__file__)), 'static')),
【讨论】:
您使用的是开发服务器还是生产服务器(例如 apache)?当您在浏览器中键入 CSS 的 URL 时会显示什么?您是否收到 404 错误?【参考方案3】:我解决了! 我将我的目录静态放入应用程序根路径,并设置 STATIC_URL = '/static/'
谢谢
【讨论】:
以上是关于django模板中的css的主要内容,如果未能解决你的问题,请参考以下文章