Tôi vẫn còn tương đối mới đối với Django và vừa mới bắt đầu thu hút xung quanh tại Django-CMS, tuy nhiên, tôi không thể vượt qua giới thiệu cơ bản từ số official docs.django-cms không định tuyến chính xác đến url tĩnh?
Sự cố của tôi có thể liên quan đến sekizai, nhưng có vẻ như đó là vấn đề url cơ bản trong url.
Về cơ bản, tôi đã làm theo hướng dẫn gần như chính xác. Sự khác biệt duy nhất là tôi có ứng dụng cms của tôi dưới blog /, đường dẫn đầy đủ ~/workspace/djangocms/blog /. Tôi đã đặt STATIC_URL
và STATIC_ROOT
đúng theo settings.py và cùng với MEDIA_URL
và MEDIA_ROOT
của tôi.
Tôi đưa lên đường dẫn và thư mục phương tiện vì nếu tôi đặt mẫu cơ sở của mình thành liên kết tới css tại {{ MEDIA_URL }}css/somecss.min.css
thì nó hoạt động tốt. Tuy nhiên, làm tương tự với STATIC_URL: {{ STATIC_URL }}css/somecss.min.css
không hoạt động và tạo ra 404.
Ngoài ra, từ những gì tôi có thể biết, các tuyến mặc định/tĩnh/dường như hoạt động tốt cho các thư mục khác. Mã được tạo ra bởi {% cms_toolbar %}
tạo ra tiền phạt và css từ những nơi như /static/cms/css/plugins/cms.toolbar.css đang được phân phát đúng cách.
Nội dung 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