回答編集履歴
2
追記
answer
CHANGED
@@ -2,4 +2,23 @@
|
|
2
2
|
を
|
3
3
|
`link_to "##", talk_like_path(talk,like), method: :delete`
|
4
4
|
に
|
5
|
-
それでうまくいかなかったら、modelのcode載せてください。
|
5
|
+
それでうまくいかなかったら、modelのcode載せてください。
|
6
|
+
|
7
|
+
追記
|
8
|
+
ああ、app/models/talk.rb:16 でエラーになっているわけではなさそうですね。
|
9
|
+
すると
|
10
|
+
`
|
11
|
+
- if talk.like?(current_user)
|
12
|
+
= link_to "##", talk_like_path(talk), method: :delete
|
13
|
+
- else
|
14
|
+
= link_to "#", talk_likes_path(talk), method: :post`
|
15
|
+
のどちらかの link_toが怪しいです。 postの方は問題ないですが、deleteの方ですね。
|
16
|
+
talk には沢山 likeがつくので、そのどのlikeなのか、がきちんと伝わっていないでことですね。
|
17
|
+
`talk_like_path(talk,like)`と回答しましたがそこが問題だ。
|
18
|
+
likeを特定する必要があります。
|
19
|
+
`def like?(user)` を直して、userがpostしたlikeを返すようにしましょう。
|
20
|
+
`liked_users.find{|linke_user| liked_user.user_id == user.id }&.like`
|
21
|
+
でしょうか。
|
22
|
+
method名とそぐわないから改名するのがよいかも。
|
23
|
+
で、
|
24
|
+
`- if (like = talk.like?(current_user))`
|
1
追記
answer
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
`link_to "##", talk_like_path(talk), method: :delete`
|
2
2
|
を
|
3
3
|
`link_to "##", talk_like_path(talk,like), method: :delete`
|
4
|
-
に
|
4
|
+
に
|
5
|
+
それでうまくいかなかったら、modelのcode載せてください。
|