gpt4 book ai didi

django-cms - django-cms无法正确路由到静态URL?

转载 作者:行者123 更新时间:2023-12-04 13:24:23 26 4
gpt4 key购买 nike

我对Django还是比较陌生,并且刚刚开始在Django-CMS上闲逛,但是,我无法超越official docs的基本介绍。

我的问题可能与sekizai有关,但感觉像是urls.py中的基本url问题。

基本上,我几乎完全遵循了该教程。唯一的区别是,我的cms应用程序位于blog/下,完整路径为〜/workspace/djangocms/blog/。我已经在settings.py下正确设置了STATIC_URLSTATIC_ROOT,我的MEDIA_URLMEDIA_ROOT也是如此。

我调出媒体路径和目录,因为如果我将基本模板设置为通过{{ MEDIA_URL }}css/somecss.min.css链接到css,则可以正常工作。但是,对STATIC_URL执行相同操作:{{ STATIC_URL }}css/somecss.min.css不起作用,并产生404。

另外,据我所知,默认的/static/路由对于其他目录似乎也能正常工作。 {% cms_toolbar %}生成的代码可以在/static/cms/css/plugins/cms.toolbar.css之类的地方正常生成CSS。

urls.py的内容

from django.conf.urls.defaults import *                                         
from django.contrib import admin
from django.conf import settings

admin.autodiscover()

urlpatterns = patterns('',
# Examples:
# url(r'^$', 'blog.views.home', name='home'),
# url(r'^blog/', include('blog.foo.urls')),

# Uncomment the admin/doc line below to enable admin documentation:
# url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

# Uncomment the next line to enable the admin:
# url(r'^admin/', include(admin.site.urls)),
(r'^admin/', include(admin.site.urls)),
url(r'^', include('cms.urls')),
)
if settings.DEBUG:
urlpatterns = patterns('',
url(r'^media/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.MEDIA_ROOT,
'show_indexes': True}),
url(r'',
include('django.contrib.staticfiles.urls')),
) + urlpatterns

最佳答案

在遵循相同的教程之后,我反复研究了这个问题。

我的网站将加载标准的欢迎页面,而我可以创建CMS页面。但是,当我尝试在模板中加载静态文件时,我不断收到404错误。

OP给出的答案对我有很大帮助。

需要明确的是,这对我有用:

  • 将项目中的静态目录重命名为local_static
  • 将以下内容添加到settings.py
  • PROJECT_PATH = os.path.abspath(os.path.dirname(__file__)) STATICFILES_DIRS = (
    os.path.join(PROJECT_PATH, "local_static/"),
    )

    这对我有用。我现在可以停止拔头发

    关于django-cms - django-cms无法正确路由到静态URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8550324/

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