我在 Django 中的 urls.py 文件有问题,它允许我在任何地方访问我的管理界面,在任何地方加载图像。如果有人可以看看它,提前谢谢!
from django.conf.urls import patterns, include, url
from django.contrib import admin
from django.conf import settings
urlpatterns = patterns('',
(r'^admin/doc/', include('django.contrib.admindocs.urls')),
(r'^admin/', include(admin.site.urls)),
url(r'^admin/files/(?P<filepath>.*)$', 'my.app.admin.serv_backup_files', name='admin-file-serv'),
(r'^(?P<restaurant_slug>[^(admin)][a-zA-B-_0-9]+)$', TemplateView.as_view(template_name=os.path.join(settings.G_DOC_ROOT, 'index.html'))),
(r'^(?P<path>[^(admin)].*)$', 'django.views.static.serve', {'document_root': settings.G_DOC_ROOT}),
)
问题是,通过这种配置,我在运行服务器的控制台上看到了类似的东西
“获取 /img/field_bg.gif HTTP/1.1”404
对于所有应该静态提供的图像。
我可以[^(admin)]
从最后一个模式中删除 并且该站点将得到很好的服务,除了它会尝试将管理界面重新路由到静态文件。
在此先感谢您帮助我结合静态文件、无子域 TemplateViewing 和管理员正常访问。