■実現したいこと
大まかに説明をすると、
①画像をアップロード(Formview1/upload.html)
②その画像に処理を加える(Fromview2/proc.html)
③処理を加えた画像に対して結果を返す(result.html)
■大まかなviews.py
python
1class Uploadview(generic.edit.FormView): 2 ## FormやTemplateの指定 3 def form_valid(self, form): 4 5 ## uploadの処理 6 7 ## Uploadというモデルに保存し、保存したモデルのpkを一緒に渡す 8 return redirect('app:proc', pk=pk) 9 10class ProcView(generic.edit.FormView) 11 ## FormやTemplateの指定 12 def get_context_data(self, **kwargs): 13 context = super().get_context_data(**kwargs) 14 upload_pk = self.kwargs['pk'] 15 upload_item = Upload.object.get(pk=upload_pk) 16 17 ## proc.htmlに表示するためのcontext 18 return({'upload': upload_item,}) 19 20 def form_valid(self, form): 21 ## proc.htmlでPOSTされた情報をもとに、upload_itemに処理を加える。 22 23 ## 処理後、飛ばすページ 24 return redirect('app:result')
■分からないこと
上記のコードのように、upload_itemの変数を使いたいので、
get_context_dataにform_validをネストさせたのですが、
No URL to redirect to. Provide a success_url.
というエラーが出て結果ページが表示されない状態です。フォームの連続した処理を行うため、一番最初のフォームデータを引き継ぐためにはどうすればいいでしょうか?
ご意見いただけると非常に助かります。
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。