2016-11-02 16 views
-1

私は広告を配置するためのWebアプリケーションを構築するためのチュートリアルを持っています(Rails 4.2.6を使用していますが、本は古いバージョンについて書かれています)。作成アクションのアイデアは、作成後にユーザーを新しい追加ページにリダイレクトすることです。本から提案されたコードをこのように見て:redirect_to not working

def create 
    @ad = Ad.new(ad_params) 
    @ad.save 
    redirect_to "/ads/#{ @ad.id }" 
end 

残念ながら、それはどこにもリダイレクトされません - ユーザーは、おめでとう、ページ上のstucked取得:

<h1>Ad created!</h1> 
view your ad <a href="ads/<%= @ad.id %>">here</a> 

私のリダイレクトコードに問題は何ですか?ある場所で使用する理由は何ですか?#@オブジェクト} - 別の場所では、<%= @ object%>?

+0

を使用してみてください、あなたが '/広告/#{@ ad.id}'のために定義されたルートを持っていますか? 'bundle exec rake routes |あなたの出力は何ですか? grep/ads'? – sa77

+0

@ sa77、 '〜/ mebay $ bundle exec rake routes | grep/ads 広告GET /ads(.:format)広告#index POST /ads(.:format)広告#作成 new_ad GET /ads/new(.:format)広告#new 広告GET/ads/id(。:format)ads#show ads_new POST /ads/new(.:format)ads#new ads_create POST /ads/create(.:format)ads#create GET /ads(.:format)ads# index GET /ads/:id(.:format)ads#show' 新しいルートの定義については何も書かれていません。 – crcerror

+0

は電子書籍ですか?はいの場合はリンクを貼り付けることができますか? – sa77

答えて

1

def create 
    @ad = Ad.new(ad_params) 
    @ad.save 
    redirect_to ads_path(@ad) 
end 
+0

ありがとうございました! – crcerror

+0

はads_path(/ ads /)にリダイレクトされます - /ads/@ad.idに正確にリダイレクトする方法はありますか? – crcerror

+0

あなたがredirect_to ad_path(@ad) –