Приложение Django Admin не работает на URL - PullRequest
0 голосов
/ 18 августа 2010

В моем файле URL я настроил приложение администратора django для запуска с URL /adminDJ/.Однако это не работает.Он загружает мой собственный админский материал.Вот мой urls.py:

 (r'^admin/add/member/$', 'astonomyStuff.attendance.views.newMember'),
 (r'^admin/add/$', 'astonomyStuff.attendance.views.addPage'), 
(r'^admin/$', 'astonomyStuff.attendance.views.adminPage'),
 (r'^adminDJ/$', include(admin.site.urls)),
 (r'^talks/$', 'astonomyStuff.attendance.views.talksIndex'),
 (r'^talks/past/$', 'astonomyStuff.attendance.views.viewAllTalks'),
 (r'^members/$', 'astonomyStuff.attendance.views.viewMembers'),
 (r'^members/(?P<member_number>[^/]+)/$', 'astonomyStuff.attendance.views.viewMember'), 
 (r'^members/(?P<member_number>[^/]+)/delete$', 'astonomyStuff.attendance.views.deleteMember'),
 (r'^admin/add/talk/$', 'astonomyStuff.attendance.views.newTalk'),
 (r'^talks/(?P<talk_title>[^/]+)/$', 'astonomyStuff.attendance.views.viewTalk'), 
 (r'^attendance/(?P<talk_title>[^/]+)/$', 'astonomyStuff.attendance.views.viewAttendance'),  
 (r'^databrowse/(.*)', databrowse.site.root),
 (r'^adminDoc/doc/', include('django.contrib.admindocs.urls')),
 (r'^accounts/login/$', 'django.contrib.auth.views.login', {'template_name': 'login.html'}),
 (r'^accounts/profile/$', 'astonomyStuff.attendance.views.adminPage'),
 (r'^admin/add/attendance/$', 'astonomyStuff.attendance.views.addAttendance'),
 (r'^members/(?P<member_number>[^/]+)/edit$', 'astonomyStuff.attendance.views.editMember'),
 (r'^public/talks/$', 'astonomyStuff.attendance.views.publicViewTalks')

Я изменил порядок, чтобы увидеть, была ли это проблема, но это не исправило ее.Должно ли приложение администратора django работать на /admin/?
Заранее спасибо,
Дин

РЕДАКТИРОВАТЬ: У меня было приложение администратора, работавшее раньше, просто чтобы вы знали, что оно сломалось, только когда я игралс URL.

РЕДАКТИРОВАТЬ 2: Вот мой полный urls.py:

from django.conf.urls.defaults import *

from astonomyStuff.attendance.models import Member
from astonomyStuff.attendance.models import Non_Member
from astonomyStuff.attendance.models import Talk
from astonomyStuff.attendance.models import Event_Attendance
from django.contrib import admin
from django.contrib import databrowse


admin.autodiscover()
admin.site.register(Member)
admin.site.register(Non_Member)
admin.site.register(Talk)
admin.site.register(Event_Attendance)   
databrowse.site.register(Member)
databrowse.site.register(Non_Member)
databrowse.site.register(Talk)
databrowse.site.register(Event_Attendance)

urlpatterns = patterns('',
# Example:
# (r'^astonomyStuff/', include('astonomyStuff.foo.urls')),

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

# Uncomment the next line to enable the admin:
 # (r'^admin/add/member/$', 'astonomyStuff.attendance.views.newMember'),
 # (r'^admin/add/$', 'astonomyStuff.attendance.views.addPage'), 
 #     (r'^admin/$', 'astonomyStuff.attendance.views.adminPage'),
 (r'^admin/$', include(admin.site.urls)),
 (r'^talks/$', 'astonomyStuff.attendance.views.talksIndex'),
 (r'^talks/past/$', 'astonomyStuff.attendance.views.viewAllTalks'),
 (r'^members/$', 'astonomyStuff.attendance.views.viewMembers'),
 (r'^members/(?P<member_number>[^/]+)/$', 'astonomyStuff.attendance.views.viewMember'), 
 (r'^members/(?P<member_number>[^/]+)/delete$', 'astonomyStuff.attendance.views.deleteMember'),
 # (r'^admin/add/talk/$', 'astonomyStuff.attendance.views.newTalk'),
 (r'^talks/(?P<talk_title>[^/]+)/$', 'astonomyStuff.attendance.views.viewTalk'), 
 (r'^attendance/(?P<talk_title>[^/]+)/$', 'astonomyStuff.attendance.views.viewAttendance'),  
 (r'^databrowse/(.*)', databrowse.site.root),
 (r'^adminDoc/doc/', include('django.contrib.admindocs.urls')),
 (r'^accounts/login/$', 'django.contrib.auth.views.login', {'template_name': 'login.html'}),
 (r'^accounts/profile/$', 'astonomyStuff.attendance.views.adminPage'),
 # (r'^admin/add/attendance/$', 'astonomyStuff.attendance.views.addAttendance'), 
 (r'^members/(?P<member_number>[^/]+)/edit$', 'astonomyStuff.attendance.views.editMember'),
 (r'^public/talks/$', 'astonomyStuff.attendance.views.publicViewTalks'),
)

Ответы [ 2 ]

2 голосов
/ 18 августа 2010

Не это (r'^adminDJ/$', include(admin.site.urls)),

Но это (r'^adminDJ/', include(admin.site.urls)), ##note, no $ in the regex

Помните, ребята, нужно проверить ваши регулярные выражения ...

0 голосов
/ 18 августа 2010

Это, вероятно, ничего, но это привлекло мое внимание. Из первого фрагмента:

(r'^admin/$', 'astonomyStuff.attendance.views.adminPage'), 
(r'^adminDJ/$', include(admin.site.urls)),

И второй фрагмент:

(r'^admin/$', include(admin.site.urls)),

Так ты этого хочешь? Первый фрагмент использует ^adminDJ/$, а второй - admin/$ напротив include(admin.site.urls).

Это два файла? И используются оба? В этом случае первый фрагмент вполне может переопределить второй, в результате чего ваши админские представления будут отображаться вместо Django.

...