0

感谢您对此进行调查,因为它现在让我很紧张:)

我无法获得 style.css (或任何静态文件都无法使用!),我已经四处搜索,到目前为止没有一个解决方案有效。

我的 urls.py:

 from django.conf.urls import patterns, include, url
 from django.contrib.staticfiles.urls import staticfiles_urlpatterns
 from django.conf import settings

 urlpatterns = patterns('',
   url(r'^$', 'ports.views.home', name='home'),
 )
 urlpatterns += staticfiles_urlpatterns()

 if settings.DEBUG:
    urlpatterns += patterns('django.contrib.staticfiles.views',
    url(r'^static/(?P<path>.*)$', 'serve'),
)

我的 base.html 我加载静态的地方:

{% load staticfiles %}

<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="static/css/style.css" type="text/css" />
...

我的 settings.py 引用了静态目录:

STATIC_URL = '/static/'

我不明白我做错了什么(或者事实上为什么服务这些静态数据必须如此尴尬)。湖人方面的任何帮助将不胜感激!

谢谢,布拉吉布拉

4

3 回答 3

2

在你的服务器上,你可能需要试试这个

python manage.py collectstatic -l

建立-l一个符号链接而不是复制。这可以防止同一文件的两个副本并节省一些空间,但也意味着如果重命名原始文件,则必须重新建立链接。

有关 collectstatic 命令的更多信息在这里

不要忘记设置STATIC_ROOT

仅供参考,这是我settings.py的那部分:

# Absolute path to the directory static files should be collected to.
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/home/media/media.lawrence.com/static/"
STATIC_ROOT = os.path.join(os.path.dirname(__file__), '..', 'static').replace('\\', '/')

# URL prefix for static files.
# Example: "http://media.lawrence.com/static/"
STATIC_URL = '/static/'

这适用于 Django 1.4+,其中 位于settings.py(例如)下并且与文件夹mysite/mysite/不在同一级别。static

于 2013-04-13T15:39:33.857 回答
1

我的问题是在块内容之外添加 css。将它移动到块内容中解决了这个问题。

{% extends "home/base.html" %}
{% load static %}
<!--<link rel="stylesheet" href="{% static 'blog/main.css' %}">-->
{% block content %}
<link rel="stylesheet" href="{% static 'blog/main.css' %}">

     --some code--

{% endblock content%
于 2018-12-22T05:08:19.317 回答
0

Try:

{% load static %}
<link rel="stylesheet" href="{% static 'css/style.css' %}" type="text/css" />
于 2013-04-13T16:23:05.493 回答