回答編集履歴

2

インデントを修正

2020/04/20 01:57

投稿

hasami
hasami

スコア1277

test CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  ```python
12
12
 
13
- def post(self, request, *args, **kwargs):
13
+ def post(self, request, *args, **kwargs):
14
14
 
15
15
  form_class = self.get_form_class()
16
16
 
@@ -28,8 +28,8 @@
28
28
 
29
29
  response = self.form_invalid(form)
30
30
 
31
- return _ajax_response(
31
+ return _ajax_response(self.request, response, form=form,
32
32
 
33
- self.request, response, form=form, data=self._get_ajax_data_if())
33
+ data=self._get_ajax_data_if())
34
34
 
35
35
  ```

1

回答を追記

2020/04/20 01:57

投稿

hasami
hasami

スコア1277

test CHANGED
@@ -1 +1,35 @@
1
1
  サインアップ後にページ遷移するための、クラス変数success_urlまたはget_success_urlメソッドを定義してますか?
2
+
3
+
4
+
5
+ SignUpViewに以下のpostメソッドを追加した場合、validとinvalidのどちらが出力されますか?
6
+
7
+ invalidが表示された場合、フォームのバリデーションに失敗していて、form_validメソッドは呼び出されません。
8
+
9
+
10
+
11
+ ```python
12
+
13
+ def post(self, request, *args, **kwargs):
14
+
15
+ form_class = self.get_form_class()
16
+
17
+ form = self.get_form(form_class)
18
+
19
+ if form.is_valid():
20
+
21
+ print('valid')
22
+
23
+ response = self.form_valid(form)
24
+
25
+ else:
26
+
27
+ print('invalid')
28
+
29
+ response = self.form_invalid(form)
30
+
31
+ return _ajax_response(
32
+
33
+ self.request, response, form=form, data=self._get_ajax_data_if())
34
+
35
+ ```