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

回答編集履歴

2

追記

2020/02/08 08:46

投稿

winterboum
winterboum

スコア23654

answer CHANGED
@@ -1,3 +1,18 @@
1
+ 最初の書き込みで勘違いしたのは、以下の現象からです。
2
+ ```
3
+ def create
4
+ following = current_user.follow(@user)
5
+ following.save
6
+ ```
7
+ 「失敗」のlogはこの部分でINSERTされていません。つまり、**既にそのデータは有った**と言うことを意味しています。にも関わらず フォローするボタンが出ていたのはおかしいですね。
8
+ ここを詰める必要がありそうです。
9
+ User、Relationship の状態を一覧し、
10
+ viewでのボタンの出方を確認し、
11
+ ボタンを押した後のRelationship の状態を確認し
12
+ viewの出方を確認する
13
+ というのを見てみたい
14
+
15
+ --------------
1
16
  いろいろ問題がありそうですが、まずここがおかしいのでは?
2
17
  `def following?(other_user)
3
18
  self.followings.include?(other_user) # other_userが含まれていたらtrueを返す

1

修正

2020/02/08 08:46

投稿

winterboum
winterboum

スコア23654

answer CHANGED
@@ -7,4 +7,7 @@
7
7
  current_user : loginしているユーザ
8
8
  user : 画面に表示されているユーザ
9
9
  ですから、
10
- この if 文は userとcurrent_user が入れ替わっているようです
10
+ この if 文は userとcurrent_user が入れ替わっているようです
11
+ 修正
12
+ 勘違い。follow の方向を逆に見てました、ごめんなさい。
13
+ も少し考えて回答し直します