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

質問編集履歴

3

タイトル、ソースコードの修正

2021/08/17 07:35

投稿

hide_py
hide_py

スコア1

title CHANGED
@@ -1,1 +1,1 @@
1
- 【Django, python】views.pyでコメントフォームのバリデーションを実装
1
+ 【Django, python】バリデーションをする・を分ける方法
body CHANGED
@@ -13,9 +13,7 @@
13
13
  どのような処理を書けばよいかご教示いただけないでしょうか。
14
14
 
15
15
 
16
- また、そもそもhtmlファイルにおいてByeボタンはtype="submit"である必要はあるのでしょうか?
17
16
 
18
-
19
17
  ### 該当のソースコード
20
18
  ```Python
21
19
  #models.py
@@ -41,10 +39,9 @@
41
39
  model = Comment
42
40
  form_class = CommentForm
43
41
 
44
- def form_valid(self, form): #←そもそもform_valid関数を使う必要なし?
42
+ def form_valid(self, form):
45
43
  if self.request.method == 'POST':
46
44
  if 'reply' in self.request.POST:
47
- ################ここでバリデーションの処理??#######################
48
45
  post_pk = self.kwargs['post_pk'] #投稿記事のpkを取得
49
46
  comment = form.save(commit=False)
50
47
  comment.post = get_object_or_404(Post, pk=post_pk) 
@@ -52,7 +49,6 @@
52
49
  comment.save()
53
50
  return redirect('register:top') #Top画面へ遷移
54
51
  elif 'bye' in self.request.POST:
55
- ##################{{バリデーションはしない。受信した記事を二度と表示させない処理(未作成)}}###################
56
52
  return redirect('register:top')
57
53
  ```
58
54
  ```html

2

タイトル修正

2021/08/17 07:35

投稿

hide_py
hide_py

スコア1

title CHANGED
@@ -1,1 +1,1 @@
1
- 【Django, python】views.pyでコメント入力のバリデーションを実装したい
1
+ 【Django, python】views.pyでコメントフォームのバリデーションを実装したい
body CHANGED
File without changes

1

タイトル、ソースコードの修正

2021/08/08 06:01

投稿

hide_py
hide_py

スコア1

title CHANGED
@@ -1,1 +1,1 @@
1
- 【Django, python】views.pyでボタ毎にバリデーションの有無分けたい
1
+ 【Django, python】views.pyでコメト入力のバリデーションを実装したい
body CHANGED
@@ -17,8 +17,14 @@
17
17
 
18
18
 
19
19
  ### 該当のソースコード
20
-
21
20
  ```Python
21
+ #models.py
22
+ class Comment(models.Model):
23
+ reciever = models.ForeignKey(User, on_delete=models.CASCADE)
24
+ text = models.TextField('', max_length=200)
25
+ post = models.ForeignKey(Post, on_delete=models.CASCADE, verbose_name='posts')
26
+ ```
27
+ ```Python
22
28
  #forms.py
23
29
  class CommentForm(forms.ModelForm):
24
30
  def __init__(self, *args, **kwargs):
@@ -50,6 +56,7 @@
50
56
  return redirect('register:top')
51
57
  ```
52
58
  ```html
59
+ <!--comment_form.html -->
53
60
  <form action="" method="POST">
54
61
       {{ form.as_p }}
55
62
  <button type="submit" name="reply", class="btn btn-success" >Reply</button>