gpt4 book ai didi

django - Django RunServer在开发中不提供静态文件

转载 作者:行者123 更新时间:2023-12-03 14:00:27 25 4
gpt4 key购买 nike

我将Django与runserver一起用于开发。当我部署到生产服务器时,我可以看到我的所有静态文件,但不能在本地计算机上看到。

我做了collectstatic并且设置了DEBUG = True

我在网上发现了许多不同的意见,其中最突出的是STATICFILES_DIRS,但这对我不起作用。

如何设置它,以便在开发环境中可以看到静态文件,并且在将文件上传到服务器时,无需进行任何更改即可使生产环境正常工作。

编辑-我的urls.py文件:

from django.conf.urls import patterns, include, url
from django.conf.urls.static import static
import newsflashes
import settings

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
url(r'^admin/', include(admin.site.urls)),
url(r'^', include('newsflashes.urls')),
) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)


编辑-文件结构:

我有两个目录,静态和动态。静态文件中有静态文件,动态目录中有django应用程序。

编辑设置:

我的相关设置如下

STATIC_ROOT = os.path.join(BASE_DIR, '..', 'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = ()

最佳答案

我设法解决了。

我在项目文件夹static中创建了另一个名为static的目录,并在其中复制了我的静态文件。

然后我添加:

from django.contrib.staticfiles.urls import staticfiles_urlpatterns
import settings
if settings.DEBUG:
urlpatterns += staticfiles_urlpatterns()


给我的 urls.py



STATICFILES_DIRS = (os.path.join(BASE_DIR, 'static'),)


给我的 settings.py

然后,当我部署时,我执行 manage.py collectstatic并且由于Apache的配置正确,所以一切都会正常!

基于 http://dlo.me/archives/2013/01/14/how-to-serve-static-files-django/

谢谢大家。

关于django - Django RunServer在开发中不提供静态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20398600/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com