ネストされたリソースアクションについてサポートが必要です。ネストされたリソースが3つあります。ジョブ、質問、回答です。私は現在、質問コントローラーで編集/更新メソッドを機能させることだけを試みています。関係は次のとおりです。Jobshas_manyの質問とQuestionsはJobsに属しています。
質問に対して編集アクションを使用していますが、エラーが発生します:
No route matches "/jobs/1/questions"
理由がわかりません。
私は現在、Questionsコントローラーの編集および更新アクションとしてこのコードを持っています:
def edit
@job = Job.find(params[:job_id])
@question = @job.questions.find(params[:id])
end
def update
@job = Job.find(params[:job_id])
@question = @job.questions.find(params[:id])
if @question.update_attributes(params[:question])
redirect_to(@question)
end
end
モデル:
class Job < ActiveRecord::Base
has_many :questions
class Question < ActiveRecord::Base
belongs_to :job
ルート:
resources :jobs do
resources :questions do
resources :answers
end
end
私が理解していないことは次のとおりです:a)リダイレクトしなかったのに、なぜ質問インデックスパスにリダイレクトされるのか、b)有効なルートではないと表示されますが、正確に更新するとページが正しく読み込まれるURL。
複数のオプションを試しましたが、解決策がわかりません。
助けてくれてありがとう。さらに情報が必要な場合はお知らせください。
psここに私のレーキルートがあります:https ://gist.github.com/1077134