我是初学者,使用django并尝试制作我的第一个应用程序,但我继续得到"未找到"每次我在我的视图上添加一个javascript文件
这是我的setting.py
STATIC_URL = '/home/me/PycharmProjects/GLife/static/'
MEDIA_ROOT = os.path.join(PROJECT_DIR, 'media')
MEDIA_URL = '/media/'
STATIC_ROOT = 'static/'
STATICFILES_DIRS = (
os.path.join(PROJECT_DIR, 'static'),
)
urls.py
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^register', include('register.urls')),
url(r'^media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT, 'show_indexes': True}),
]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += staticfiles_urlpatterns()
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<!--<script src="/static/djangular/js/django-angular.min.js" type="text/javascript"></script>-->
<script src="{% static '/js/_register/register.js' %}" type="text/javascript"></script>
<title></title>
</head>
<body>
我已经搜索过它,但建议失败了,希望有人可以提供帮助
这是我的项目结构
的myproject
- 主
--register
---migrations
---templates
--static
---js
----_register
我只是尝试使用js
进行警报显示答案 0 :(得分:3)
这种情况正在发生,因为您切换了STATIC_ROOT
和STATIC_URL
的值。必须是这样的:
STATIC_URL = '/static/'
STATIC_ROOT = '/home/me/PycharmProjects/GLife/static/'
STATIC_URL是引用位于STATIC_ROOT的静态文件时使用的URL。
STATIC_ROOT是collectstatic将收集静态文件以进行部署的目录的绝对路径。
此外,您的静态和STATIC_ROOT
路径必须不同。
使用开发服务器时,您不需要配置STATIC_ROOT
或使用collectstatic管理命令,因为如果DEBUG
为真,它将自动提供静态文件夹中的静态文件。