私はこれに従っており、必要に応じて変更を加えています。
と に相当するものが@post
あり@comment
ます。私のコメントは「質問」です。この手順をもう一度試してみましたが、コメントではなく (投稿ではなく)。コメントへのコメント 必要に応じて、これらは質問に対する回答/応答です。
私はこれを機能させることに成功していません。
undefined method 'answers' for nil:NilClass`
は、コメントの一部としてレンダリングされるエラーでanswers/_form.html.erb
あり、これは、同等の投稿の一部としてレンダリングされます。
<%= form_for([@question, @question.answers.build]) do |f| %>
例外を発生させる行です。@question
問題は、何らかの理由で値が与えられていないことだと思いますか?
それか私のルートファイルが正しくありません(少なくとも私の推測です)。
resources :posts-equivalent do
...
resources :questions
end
resources :questions do
resources :answers
end
これは私を一日中困惑させました-どんなアイデアでも大歓迎です。これ以上のコードを見たい場合は、コメントを残してください。ここで更新します。
追加コード:
エラーメッセージ:
Showing .../app/views/answers/_form.html.erb where line #1 raised:
undefined method `answers' for nil:NilClass
Extracted source (around line #1):
1: <%= form_for([@question, @question.answers.build]) do |f| %>
アンサーズ コントローラー:
class AnswersController < ApplicationController
def create
@question = Question.find(params[:question_id])
@answer = @question.answers.create(params[:answer])
redirect_to concept_path(@question.concept)
end
end