当我使用Django通用update_object
视图进行编辑时,我总是收到此错误:
Page not found (404) Request Method:
POST Request URL:
http://127.0.0.1:8000/bookmarks/edit/
我的url.py
(r'^edit/(?P<object_id>\d+)$',
update_object,
{'form_class':BookForm,
'post_save_redirect':'/',
'queryset':Book.objects.all()
}),
我的模板:
<form action="." method="POST">
{{form.as_p}}
<p>
<input type="submit" name="submit" value="Next?" /></button>
</p>
</form>
为什么会这样?
答案 0 :(得分:2)
在您的模板帖子中,网址为:/bookmarks/edit/
。它与^edit/(?P<object_id>\d+)$
不匹配。
所以编辑
<form action="." method="POST">
到
<form action="/bookmarks/edit/{{ object.id }}" method="POST">
然后它会起作用!
或将网址^edit/(?P<object_id>\d+)$
更改为^edit/(?P<object_id>\d*)$
。
答案 1 :(得分:1)
这样做:
r'^edit/(?P<object_id>\d+)$'