2010-11-21 1 views
0

私は2つの継承されたリソース(ホセ・ヴァリムのプラグインで) - ブログと投稿を持っています。もちろん - ブログhm投稿と投稿btブログ。ルートまた、私は私が計画しているようinherited_resources - 親に行く

def index 
    redirect_to parent_url 
    end 

と次のようにアクションポスト#インデックスを更新した

resources :blogs, :only => [:show] do 
    resources :posts 
    end 

単に十分である - http://devhost/blogs/2/postsにアクセスしようとする試みで、私はhttp://devhost/blogs/2にリダイレクトされますが、私は、ルーティングエラーを参照してください私は見てとても奇妙ので

No route matches {:action=>"show", :controller=>"blogs"} 

blog GET /blogs/:id(.:format)  {:controller=>"blogs", :action=>"show"} 

オンレーキルート

次のエラーの原因は何ですか?

答えて

0

ルートparamsに存在しないため、親(ブログ)が設定されていないようです。 belongs_toをPostsControllerに追加しましたか?

PostsController < InheritedResources::Base 
    belongs_to :blog 
    ... 
+0

はい、もちろんです!私はアクション 'blogs#show'と 'posts#index'をコードの記述と組み合わせようとしています。多分あなたはより良い方法を知っている? –

+0

私は リソースへの私のルートを変更しました:ブログ、:を除く=> [:ショー]:投稿 エンド 試合のブログ/:blog_id '=>「ポスト#インデックス」 ではなく、それがあることを確認してください リソースを行います最高の解決策 –

関連する問題