![](/img/trans.png)
[英]Django updateview form validation error not displaying in templates
[英]Django: How to put existing fields when displaying form for UpdateView?
我正在制作一個劇集跟蹤器網站,當我希望用戶編輯節目時,提供的表單以空字段開頭。 如何使用現有字段填寫表單? 例如,當用戶正在觀看節目並且最初是在第 5 集時,我如何調用“集”字段已經在第 5 集而不是空的更新表單?
視圖.py
class ShowUpdate(UpdateView):
model = Show
slug_field = 'title'
slug_url_kwarg = 'show'
fields = ['description', 'season', 'episode']
顯示詳細信息.html
<form action="{% url 'show:show-update' show=show.title %}" method="post">
{% csrf_token %}
<button type="submit">Edit</button>
</form>
您可以使用 UpdateView 中的值填寫表單
def get_initial(self):
return { 'field1': 'something', 'field2': 'more stuff' }
UpdateView 也繼承自 SingleObjectMixin,它提供了get_object
和get_queryset
,因此您可以使用其中任何一個來獲取要填充表單的對象數據。 就像是:
def get_object(self):
return Show.objects.get(pk=self.request.GET.get('pk'))
此外,如果您的 url 中有一個 pk 或 slug 作為參數,它也應該選擇它。 如:
url(r'^shows/update/(?P<pk>\d+)/$',ShowUpdate.as_view())
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.