python - 找不到 django 静态目录

标签 python django static

我是使用 django 的初学者,并尝试制作我的第一个应用程序,但每次我在 View 中添加 javascript 文件时,我都会收到“未找到”的消息

这是我的设置.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'),
)

url.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>

我已经搜索过,但建议失败,希望有人能帮忙

这是我的项目结构

我的项目
--主要

--register
    ---migrations
    ---templates

--static
    ---js
        ----_register

我只是尝试使用 js 进行警报显示作为测试

最佳答案

发生这种情况是因为您切换了 STATIC_ROOTSTATIC_URL 的值。一定是这样的:

STATIC_URL =  '/static/'
STATIC_ROOT = '/home/me/PycharmProjects/GLife/static/'

STATIC_URL is the URL to use when referring to static files located in STATIC_ROOT.

STATIC_ROOT is the absolute path to the directory where collectstatic will collect static files for deployment.

此外,您的静态路径和 STATIC_ROOT 路径必须不同。

使用开发服务器时,您不需要配置STATIC_ROOT或使用collectstatic管理命令,因为如果DEBUG为true,它会自动从静态文件夹中提供静态文件.

关于python - 找不到 django 静态目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32409697/

相关文章:

c++ - 什么是静态变量?

C++ static const 和初始化(有没有惨败)

java - 嵌套枚举是否应该声明为静态?

python - 使用 DRF 时 API 响应时间太慢

python - 如何判断一个字形是否可以显示?

python - np.unravel_index 的直观解释是什么?

python - 使用轮廓分数

java - 如果使用 ruby​​ on rails、python 或 java 可以做得更好,为什么还要使用 php 框架进行编程?

python - 当我访问对象的属性时,Django 是否会访问数据库?

python - 解析 ajax 响应以检索 Scrapy 中的最终 url 内容?