teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

6

内容編集

2020/03/31 10:00

投稿

tomaa
tomaa

スコア84

title CHANGED
File without changes
body CHANGED
@@ -31,7 +31,7 @@
31
31
  class SampleView(generic.FormView):
32
32
  template_name = 'form.html'
33
33
  form_class = SampleForm
34
- success_url = reverse_lazy('main:home')
34
+ success_url = reverse_lazy('main:form')
35
35
 
36
36
  data = []
37
37
 

5

内容編集

2020/03/31 10:00

投稿

tomaa
tomaa

スコア84

title CHANGED
File without changes
body CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Django,python3でWEBシステムを開発しています。
4
4
 
5
- FormViewの中で、def form_validで取得した値を、get_context_dataの中で使用したいです。
5
+ FormViewの中で、def form_validで取得した値を、メールで使用せずにget_context_dataの中で使用したいです。
6
6
  success_urlで遷移するテンプレートを、def form_valid(self, form):のフォームを表示するものと同じにして、フォームがサブミットされた後に取得した値を表示するようにしたいです。
7
7
 
8
8
  form_validの中では値が取得できる事を確認できるのですが、その後にどのようにしてget_context_dataで使えるようにできるかがわかりません。

4

内容編集

2020/03/31 09:49

投稿

tomaa
tomaa

スコア84

title CHANGED
File without changes
body CHANGED
@@ -2,17 +2,14 @@
2
2
 
3
3
  Django,python3でWEBシステムを開発しています。
4
4
 
5
- FormViewの中で、def form_validで取得した値を、get_context_dataの中で使用使用て、success_urlで遷移するテンプレートの中で表示させたいですがうまくいきません
5
+ FormViewの中で、def form_validで取得した値を、get_context_dataの中で使用したいです。
6
+ success_urlで遷移するテンプレートを、def form_valid(self, form):のフォームを表示するものと同じにして、フォームがサブミットされた後に取得した値を表示するようにしたいです。
6
7
 
7
8
  form_validの中では値が取得できる事を確認できるのですが、その後にどのようにしてget_context_dataで使えるようにできるかがわかりません。
8
9
  ご教授いただけないでしょうか?
9
10
 
10
11
  下記コードの、#②printテストのところがうまくいきません、#①printテストは、データが表示されます。
11
12
 
12
- ---
13
- **追記**
14
- 下記のコードの場合、仮にget_context_dataで値を使用できるようになったとしても、success_urlで遷移するテンプレート(reverse_lazy('main:home'))の中で表示させる事はできないでしょうか?form.htmlの中でしか利用できないでしょうか?
15
-
16
13
  ### 該当のソースコード
17
14
  forms.py
18
15
  ```python

3

追記記入

2020/03/31 09:48

投稿

tomaa
tomaa

スコア84

title CHANGED
File without changes
body CHANGED
@@ -9,7 +9,8 @@
9
9
 
10
10
  下記コードの、#②printテストのところがうまくいきません、#①printテストは、データが表示されます。
11
11
 
12
+ ---
12
- 追記
13
+ **追記**
13
14
  下記のコードの場合、仮にget_context_dataで値を使用できるようになったとしても、success_urlで遷移するテンプレート(reverse_lazy('main:home'))の中で表示させる事はできないでしょうか?form.htmlの中でしか利用できないでしょうか?
14
15
 
15
16
  ### 該当のソースコード

2

内容編集

2020/03/31 09:16

投稿

tomaa
tomaa

スコア84

title CHANGED
File without changes
body CHANGED
@@ -9,6 +9,8 @@
9
9
 
10
10
  下記コードの、#②printテストのところがうまくいきません、#①printテストは、データが表示されます。
11
11
 
12
+ 追記
13
+ 下記のコードの場合、仮にget_context_dataで値を使用できるようになったとしても、success_urlで遷移するテンプレート(reverse_lazy('main:home'))の中で表示させる事はできないでしょうか?form.htmlの中でしか利用できないでしょうか?
12
14
 
13
15
  ### 該当のソースコード
14
16
  forms.py

1

内容編集

2020/03/31 09:15

投稿

tomaa
tomaa

スコア84

title CHANGED
File without changes
body CHANGED
@@ -46,8 +46,8 @@
46
46
  context['data'] = data
47
47
  return context
48
48
  ```
49
+ def form_valid(self, form):で取得した値を、スコープ外となるdef get_context_data(self, **kwargs):でも使用できるように、それぞれの外に、data = []と変数を作っていますが、こちらがうまく機能しません。
49
50
 
50
-
51
51
  ### 試したこと
52
52
  def get_context_data(self, **kwargs):の中で、data = form.send_email()として値を取るために、
53
53
  def get_context_data(self, **kwargs):にformを引数と渡そうとしても渡せない。