0
最近、クラスベースのビューを使用し始めましたが、正しいドロップダウン値を選択する正しい方法はまだ分かりません。これは動作しますがDjango UpdateView:選択した値にドロップダウンを設定する
class SomeUpdate(PermissionRequiredMixin, UpdateView):
model = SomeModel
form_class = SomeCreateForm
permission_required = 'app.some_model'
template_name_suffix = '_update_form'
raise_exception = True
def form_valid(self, form):
from_page = self.request.GET.get('from')
if from_page:
self.success_url = self.request.GET.get('from')
else:
self.success_url = "/somewhere/"
return super(SomeUpdate, self).form_valid(form)
、それはまた、それは本当に不快に使用すること、ドロップダウンが選択されていない滞在などCharFields
塗りつぶし:
form
は、フィールドが定義された標準ModelForm
です。フィールド自体はForeignkey
です。
私はget_initial(self)
などを使用してドロップダウン値を設定しようとしましたが、成功しませんでした。
モデルのインスタンスで作業している場合(UpdateViewの場合)は、指定したモデルの右のドロップダウン値がすでに入力されているはずです。表示しているインスタンスに、指定された外部キーに有効な値が設定されていますか? – Sayse
はい、それは正しいはずです。もう一度チェックして、選択した外部キーにアクセスできます。 UpdateViewも管理パネル経由でも、いずれのエラーもスローされません。しかし、どちらも選択していない。一方、ManyToManyフィールドは関係を適切に表示します。 –