2012-02-27 17 views
0

イムは、このルーティングエラーに不明なルーティングエラー

Noルートの一致を取得していない

私はインデックスページから新しいポストのリンクをクリックしたとき私の新しいポストリンクでは、私は新しいアクションのために私はそれがショーアクションを求めているyを知っていませんが、このエラーを与える。

私のインデックスページ:

%h1 All Posts 
%html 
    %head 
    %body 
    %table 
     %tr 
     %th Author Name 
     %th Title 
     %th Email 
     %th description 
     %th 
     %th 
     %th 

     - @posts.each do |post| 
     %tr 
      %td= post.author_name 
      %td= post.title 
      %td= post.email 
      %td= post.description 
      %td= link_to 'Show', post 
      %td= link_to 'Edit', edit_post_path(post) 
      %td= link_to 'Destroy', post, :confirm => 'Are you sure?', :method => :delete 

%br 
= link_to 'New Post', :controller => "posts", :action => "new" 

私の編集ページ:

%h1 Update Post 

%html 
    %head 
    %title 
    %body 
    = form_for(@post) do |f| 
     = f.label :Author_name 
     %br 
     = f.text_field :author_name 
     %br 
     = f.label :Title 
     %br 
     = f.text_field :title 
     %br 
     = f.label :Email 
     %br 
     = f.text_field :email 
     %br 
     = f.label :Description 
     %br 
     = f.text_area :description 

     %br 
     = f.submit 

%br 
= link_to 'Back', post_path 

私のすくい路線:

 new_auth_session GET /auths/sign_in(.:format)     devise/sessions#new 
      auth_session POST /auths/sign_in(.:format)     devise/sessions#create 
    destroy_auth_session DELETE /auths/sign_out(.:format)   devise/sessions#destroy 
      auth_password POST /auths/password(.:format)     devise/passwords#create 
     new_auth_password GET /auths/password/new(.:format)    devise/passwords#new 
     edit_auth_password GET /auths/password/edit(.:format)    devise/passwords#edit 
         PUT /auths/password(.:format)     devise/passwords#update 
cancel_auth_registration GET /auths/cancel(.:format)    devise/registrations#cancel 
     auth_registration POST /auths(.:format)       devise/registrations#create 
    new_auth_registration GET /auths/sign_up(.:format)     devise/registrations#new 
    edit_auth_registration GET /auths/edit(.:format)      devise/registrations#edit 
         PUT /auths(.:format)       devise/registrations#update 
         DELETE /auths(.:format)       devise/registrations#destroy 
        users GET /users(.:format)       users#index 
         POST /users(.:format)       users#create 
       new_user GET /users/new(.:format)      users#new 
       edit_user GET /users/:id/edit(.:format)     users#edit 
        user GET /users/:id(.:format)      users#show 
         PUT /users/:id(.:format)      users#update 
         DELETE /users/:id(.:format)      users#destroy 
      post_comments GET /posts/:post_id/comments(.:format)   comments#index 
         POST /posts/:post_id/comments(.:format)   comments#create 
     new_post_comment GET /posts/:post_id/comments/new(.:format)  comments#new 
     edit_post_comment GET /posts/:post_id/comments/:id/edit(.:format) comments#edit 
      post_comment GET /posts/:post_id/comments/:id(.:format)  comments#show 
         PUT /posts/:post_id/comments/:id(.:format)  comments#update 
         DELETE /posts/:post_id/comments/:id(.:format)  comments#destroy 
        posts GET /posts(.:format)       posts#index 
         POST /posts(.:format)       posts#create 
       new_post GET /posts/new(.:format)      posts#new 
       edit_post GET /posts/:id/edit(.:format)     posts#edit 
        post GET /posts/:id(.:format)      posts#show 
         PUT /posts/:id(.:format)      posts#update 
         DELETE /posts/:id(.:format)      posts#destroy 
        root  /           posts#index 

イムではない、それは 'ショー' を探している理由を取得することができアクションイム..新しいそれを渡すとき

+0

編集ビューにアクセスして問題が発生しているため、インデックスビューコードの代わりに編集ビューコードを入力してください。それはすべての作品は、他のリンクの作業罰金をfine..all – pduersteler

+0

返信用ええsure..thanx .. –

+0

ちょうど新しいポストのリンクは、私は、ブラウザ自体に直接新しいポストのリンクを渡すと、それは同じエラーを与えるerror..evenことがあります。.. –

答えて

1

問題があなたのリンクです:post_pathがsingluarあるlink_to 'Back', post_path

、意味:のポストへのリンクを。これは、あなたがlink_to 'Back', post_path(@some_other_post)のような投稿またはそのIDを提供していることを前提とします。

すべての投稿にバックリンクしたいとします。これは複数になります。 link_to 'Back', posts_pathposts代わりにpost)。

また、あなたのルートでこれを見ることができます。

post GET /posts/:id 
posts GET /posts 
+0

これは問題ありませんでした。 –