Django的文档提供了一种安装admin
应用的简便方法。
它假定文件的结构如下:
mysite/
manage.py
mysite/
settings.py #adding `admin` under `INSTALLED_APPS`
__init__.py
urls.py #adding urls
wsgi.py
myapp/
__init__.py
admin.py #creating this file
models.py
views.py
我的问题是如果我的结构如下,如何让admin
接口工作:
mysite/
manage.py
settings.py
__init__.py
urls.py
myapp/
__init__.py
forms.py
models.py
views.py
为了让admin
界面正常工作,我将需要进行哪些各种更改。 [我的其他应用程序正在运行]。
我已多次阅读和阅读文档。
我使用Django
1.4
。
修改#1
我在运行localhost:8000/admin/
:
error at /admin/
unknown specifier: ?P[
我的urls.py
文件包含[在文档中]行:
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
(r'^admin/(.*)', include(admin.site.urls)),
)
admin.py
文件夹中的myapp
文件包含以下代码:
import models
from django.contrib import admin
class PostAdmin(admin.ModelAdmin):
prepopulated_fields = {"slug": ("title",)}
admin.site.register(models.Article, PostAdmin)
答案 0 :(得分:1)
这是您应该包含管理网址的方式:
url(r'^admin/', include(admin.site.urls)),
documentation显示了这一点。
你得到的错误直接来自re
python模块,抱怨网址的这一部分:
?P[
您在评论中发布的网址显示为:
url(r'^(?P[-a-zA-Z0-9]+)/?$', 'myapp.views.getPost')
尝试通过为匹配组命名来更改该网址:
url(r'^(?P<slug>[-a-zA-Z0-9]+)/?$', 'myapp.views.getPost')
在getPost
视图中,添加slug
参数。