Atm*_*tma 1 django django-templates django-settings django-staticfiles
我正在尝试在 django 的开发环境中加载静态文件。我的设置如下所示:
STATIC_ROOT = '/MyProject/myapp/static/'
STATIC_URL = '/static/'
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
)
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.humanize',
)
Run Code Online (Sandbox Code Playgroud)
我的网站 urls.py 看起来像:
from django.conf import settings
import views
from django.conf.urls.static import static
admin.autodiscover()
urlpatterns = patterns('',
) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
Run Code Online (Sandbox Code Playgroud)
我的 header-include.html 看起来像:
<link href="{% static 'css/mycss.css' %}" media="screen" rel="stylesheet" type="text/css">
Run Code Online (Sandbox Code Playgroud)
我的 css 主管位于:
我的站点 > 静态 > css
我收到错误:
本地主机/静态/css/mycss.css 404(未找到)
我究竟做错了什么???
不需要文件查找器或静态根。将 djando.contrib.staticfiles 应用程序添加到您的应用程序。删除 url 映射并在项目根目录中创建文件夹。它应该只适用于您生成的链接。
所以代码:
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static"),
)
Run Code Online (Sandbox Code Playgroud)
或者将文件夹放在应用程序中。但是,如果这样做,则必须将静态 url 调用为:
{{ STATIC_URL }}
或者只使用 /static/。然后在 django 模板调用之后,将路径添加到文件。
如果您想在应用程序内使用它,请使用您正在使用的标签。这是用于特定文件的用途,例如自定义样式表或 js 文件,但对于一般样式,最好将其放在我告诉您的地方,否则如果您想使用它,您必须在每个应用程序中复制它。
| 归档时间: |
|
| 查看次数: |
4323 次 |
| 最近记录: |