urls.py:
from django.conf.urls import url, patterns
from registration import views
from django.conf import settings
from django.conf.urls.static import static
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from registration.views import index
urlpatterns = patterns('',
# ex: /polls/,
url(r'^index/', index.as_view(), name = 'index'),
)+ static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += staticfiles_urlpatterns()
local.py
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
)
PROJECT_DIR = os.path.dirname(__file__)
MEDIA_ROOT = os.path.join(PROJECT_DIR, 'media')
MEDIA_URL = '/media/'
STATIC_ROOT = os.path.join(PROJECT_DIR, 'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(PROJECT_DIR, 'staticfiles'),
)
index.html
<script src="{% static 'app_name/js/highcharts.js' %}"></script>
<script src="{% static 'app_name/js/highcharts-3d.js' %}"></script>
<script src="{% static 'app_name/js/exporting.js' %}"></script>
我正在以与上述js文件相同的方式加载我的CSS和图像。图像和CSS加载完美。任何想法为什么会发生这种情况以及我如何解决它?
提前致谢!
答案 0 :(得分:0)
在开发模式下不使用STATIC_ROOT设置。它仅在使用'collectstatic'管理命令收集静态文件时使用。默认情况下,在每个已安装应用程序的子目录中查找静态文件,其名称为“static”,另外还有STATICFILES_DIRS设置中提到的任何目录。
此外,如果您的设置中某处有DEBUG = True,则无需专门将staticfiles_urlpatterns添加到urls.py文件中。它是自动完成的。
假设如下:
文件夹结构:
myproject
-manage.py
-myproject
-myproject>__init__.py
-myproject>urls.py
-myproject>settings.py
-myproject>wsgi.py
-staticfiles
-staticfiles>js>highcharts.js
然后,试试这个:
<{1>}中的(仅显示相关设置)
settings.py
在DEBUG=True
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'staticfiles'),
)
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'
:
urls.py
和from django.conf.urls import url
urlpatterns = patterns('',
url(r'^index/', index.as_view(), name = 'index'),
)
:
index.html
答案 1 :(得分:0)
问题是javascript文件中存在一些语法错误。解决。谢谢大家的帮助。