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

回答編集履歴

2

追記

2020/06/14 04:53

投稿

winterboum
winterboum

スコア23653

answer CHANGED
@@ -12,4 +12,13 @@
12
12
  「answerのidを渡す」のでも良いのですが、そのidはどうやって選ぶ?
13
13
  もしかして私の読み損ないかな
14
14
  「1人のユーザーが行った、1つの質問に対しての答え」というので、複数有る回答の中の特定の「一人のユーザ」の答え かと思っていたのですが
15
- 一つの質問に対しての「一人のユーザが書いた一つの答え」を全ユーザ分表示するのですか?
15
+ 一つの質問に対しての「一人のユーザが書いた一つの答え」を全ユーザ分表示するのですか?
16
+
17
+ 追記
18
+ その質問についての、loginしている人の回答ですね?
19
+ でしたら、
20
+ `@answer = Question.find(params[:id]).answers.where(user_id: current_user.id).first`
21
+ これでも行けたかな
22
+ `@answer = Question.find(params[:id]).answers.find_by(user_id: current_user.id)`
23
+ ああ、Question通さなくてもよいか
24
+ `@answer = Answer.find_by(question_id: params[:id],user_id: current_user.id)`

1

追記

2020/06/14 04:53

投稿

winterboum
winterboum

スコア23653

answer CHANGED
@@ -3,4 +3,13 @@
3
3
  indexのviewからはquistionのidが渡っているだけなので、
4
4
  「1人のユーザーが行った、1つの質問に対しての答えを表示」するときに、どのユーザの答えを表示すべきなのか、が決定できません。ここはどう考えていますか?
5
5
  1. `link_to new_question_answer_path(q.id)` となっていますが、このpathは新しいAnswerを作る時のpathに見えますので、newに行ってしまいませんか?それもAnswerの。
6
- もしこれでQuestion のshowに行くとするとrails標準のroutes.rbの記述ではない? routes.rbも載せて頂く必要がありそうです。
6
+ もしこれでQuestion のshowに行くとするとrails標準のroutes.rbの記述ではない? routes.rbも載せて頂く必要がありそうです。
7
+
8
+ 追記
9
+ 失礼、`link_to question_path(q.id)`こっちですね。見落としてました。
10
+ で、ここの書き方自体は合っています。
11
+ 問題は、複数有るであろう答えのなかで誰の答えを表示するのか、が渡らないということです。
12
+ 「answerのidを渡す」のでも良いのですが、そのidはどうやって選ぶ?
13
+ もしかして私の読み損ないかな
14
+ 「1人のユーザーが行った、1つの質問に対しての答え」というので、複数有る回答の中の特定の「一人のユーザ」の答え かと思っていたのですが
15
+ 一つの質問に対しての「一人のユーザが書いた一つの答え」を全ユーザ分表示するのですか?