URL не работают - PullRequest
       10

URL не работают

1 голос
/ 16 февраля 2011

Мои URL для моего приложения выглядят так:

(r'^admin/', include(admin.site.urls)),
 (r'^contractManagement/login', 'django.contrib.auth.views.login', {'template_name': 'login.html'},()),
 (r'^contractManagement/logout', 'contractManagement.contracts.views.logout_view'),
 (r'^contractManagement/', 'contractManagement.contracts.views.index'),
 (r'^accounts/profile/(?P<contract>[^/]+)/edit$', 'contractManagement.contracts.views.editContract'), 
 (r'^accounts/profile/(?P<contract>[^/]+)/$', 'contractManagement.contracts.views.viewContract'),
 (r'^accounts/profile/$', 'contractManagement.contracts.views.loggedIn'),
 (r'^accounts/profile/newContract$', 'contractManagement.contracts.views.addContract'),
 (r'^accounts/profile/newClient$', 'contractManagement.contracts.views.addClient'),            
 (r'^accounts/profile/logout$', 'django.contrib.auth.views.logout', {'template_name': 'LoggedOut.html'},()), 

Я получаю ошибку. Нет Контракт соответствует данному запросу. Это ошибка 404. Я не знаю, почему представления для /accounts/profile/newContract/ не требуют контракта. Если вам нужно что-то еще, оставьте комментарий.

Ответы [ 2 ]

2 голосов
/ 16 февраля 2011

Шаблоны URL Django обрабатываются по порядку.Похоже, ваш /accounts/profile/newContracts/ URL совпадает с вашим шаблоном r '^accounts/profile/(?P<contract>[^/]+)/$'.

Попробуйте переместить ваш шаблон r'^accounts/profile/newContract$' вверх.(и исправьте недостающую опечатку)

Но, что более важно, убедитесь, что у вас есть схема URL, которая не является неоднозначной.

0 голосов
/ 16 февраля 2011

(г '^ счета / профиль / newContract $' newContract - без с. И вы идете в / accounts / profile / newContracts. С S в конце И если вы newContracts, он будет соответствовать этому URL: (r '^ account / profile / (? P [^ /] +) / $', 'contractManagement.contracts.views.viewContract'), И будем искать новые контракты

...