これに関するドキュメントを読みましたが、django の ModelFormMixin が正しく機能していないようです。これは私がurls.pyに持っているものです:
...
url(r'^vendors/edit/(?P<pk>\d+)/$', 'vendor_edit', name='vendor_edit'),
...
そしてviews.pyで:
class VendorEditView(DetailView, ModelFormMixin):
form_class = VendorForm
model = Vendor
success_url = reverse_lazy('vendor_list')
template_name = 'vendor_edit.html'
そしてテンプレート:
<form action='.' method='post'>{% csrf_token %}
{{ form }}
<button>Save</button>
</form>
DetailView
( View
、TemplateView
、 )以外のさまざまな種類のビューに混ぜてみましたがFormView
、うまくいきませんでした。
私が期待しているのは、 に移動する/vendors/edit/1
と、オブジェクトの詳細が編集用にすでに入力されたフォームがページ上にあるということです。私が得ているのは、空白のフォーム、フォームなし、または 405 HTTP 応答のいずれかです。ここで私が見逃している明らかなものはありますか?