У меня возникли проблемы, когда я использую slug для моего url. он сказал, что никакая почта не соответствует запросу.Django slug link страница редактирования не найдена
Проблемы, возникающие на странице редактирования и удаления, все равно работают на странице подробностей.
Но странная вещь - ошибка 404 была поднята post.views.post_detail, а не post_update.
мои URLs внутри почтового приложения
urlpatterns = [
url(r'r^$', post_list, name='list'),
url(r'^create/$', post_create, name='create'),
url(r'^(?P<slg>[\w-]+)/$', post_detail, name='detail'),
url(r'^(?P<slg>[\w-]+)/edit/$', post_update, name='update'),
url(r'^(?P<slg>[\w-]+)/delete/$', post_delete),
]
на просмотр
def post_detail(request, slg=None):
instance = get_object_or_404(Post, slg=slg)
context = {
"title":intance.title,
"instance":instance
}
return render(request, "post_detail.html", context)
def post_update(request, slg=None):
instance = get_object_or_404(Post, slg=slg)
form = PostForm(request.POST or None, request.FILES or None, instance=instance)
if form.is_valid():
instance = form.save(commit=False)
instance.save()
return HttpResponseRedirect(instance.get_absolute_url())
context = {
"title":instance.title,
"instance":instance,
"form", form,
}
return render(request, "post_form.html", context)
функция get_absolute_url также уже вернуться SLG. Единственная проблема - сообщение, не найденное на странице редактирования, даже заголовок slg совпадает с текущими доступными сообщениями.
System check identified no issues (0 silenced).
December 23, 2016 - 17:52:00
Django version 1.9.7, using settings 'blog.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Not Found: /hahaha/edit/
[23/Dec/2016 17:52:08] "GET /hahaha/edit/ HTTP/1.1" 404 1725
это как функция post_update не будет выполняться.
что может быть неправильным? спасибо.
Так _this_ что ваш собирается начать делать в свободное время теперь, когда ваш президентский срок заканчивается? –
Похоже, у вас пара недостающих '' '. – cwallenpoole
Просьба представить реальный код и полную информацию о трассировке –