我正在创建一个RSS提要。我得到这个错误鉴于:Rails 3路由帮助没有路由匹配
ActionController::RoutingError in Konkurrancers#feed
Showing C:/Rails/konkurranceportalen/app/views/konkurrancers/feed.atom.builder where line #7 raised:
No route matches {:action=>"show", :controller=>"konkurrancers", :id=>#<Konkurrancer id: 51, name: "Vind et rejsegavekort p\xC3\xA5 helt op til 25.000 Kroner...", banner1: "http://dk.orvillemedia.com/ads/banners/488/728x90.j...", banner2: "http://dk.orvillemedia.com/ads/banners/488/125x125....", deadline: nil, tracking: "http://dk.orvillemedia.com/ads/m/fdm_rejsegavekort_...", vaerdi: 25000, arrangeor: "Orville", note: "", udtraekkes: "2011-07-01 00:00:00", created_at: "2011-03-17 08:13:41", updated_at: "2011-04-23 19:15:58", kategori_id: 9, cached_slug: "vind-et-rejsegavekort-p\xC3\xA5-helt-op-til-25000-kroner-...", tid: "30 sek", form: "Nyhedsbrev", partner: "Orville", bedom: 5, rating_score: 104, ratings: 25, rating: 0>}
Extracted source (around line #7):
4:
5: for konkurrancer in @posts
6: next if konkurrancer.updated_at.blank?
7: feed.entry(konkurrancer) do |entry|
8: entry.title(konkurrancer.name)
9: entry.updated(konkurrancer.updated_at.strftime("%Y-%m-dT%H:%M:%SZ"))
10: end
我的Atom feed生成器:
atom_feed do |feed|
feed.title("the dev station")
feed.updated(@posts.first.created_at) #omit .strftime
for konkurrancer in @posts
next if konkurrancer.updated_at.blank?
feed.entry(konkurrancer) do |entry|
entry.title(konkurrancer.name)
entry.updated(konkurrancer.updated_at.strftime("%Y-%m-dT%H:%M:%SZ"))
end
end
end
我route.rb:
match '/feed' => 'konkurrancers#feed',
:as => :feed,
:defaults => { :format => 'atom' }
match '/:kategoris/:cached_slug' => 'konkurrancers#show', :as => 'konkurrance'
match '/:id' => 'kategoris#show'
取而代之的RSS源链接到konkurrancer的表演动作。我希望它链接到名为跟踪的我的konkurrancers表中的列是一个url。
它为我工作。显示你的'routes.rb' – 2011-04-26 19:57:34