###前提・実現したいこと
表題の通りModelより生成したFormに対して、初期値を設定したいと思っています。
まずはモデルとフォームをご確認下さい。
♯models.py class Situation(models.Model): s_id = models.IntegerField() situation = models.CharField(max_length=100, unique=True) class Pop_data(models.Model): p_id = models.AutoField(primary_key=True) s_id = models.ForeignKey(Situation) pop = models.CharField(max_length=100) ruby = models.CharField(max_length=100) ex_1 = models.TextField() date = models.DateTimeField(default=datetime.now)
#forms.py class PopForm(forms.ModelForm): class Meta: model = Pop_data fields = ('s_id', 'pop', 'ruby',)
今回はPopFormのs_idフィールドに動的な初期値を設定したい考えております。
そこで書いたビューが下記になります。
#views.py def mcategory(request, s_id): ~中略~ if request.method == 'POST': form = PopForm(request.POST, initial={'s_id': s_id}) if form.is_valid(): post = form.save(commit=False) post.save() return HttpResponseRedirect(reverse('sales:category'))
外部より与えられたs_idをinitialにセットしPpFormの初期値になればと思っておりますが、上手く動作いたしません。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/09/19 08:55