2011-04-26 129 views
1

我正在创建一个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。

+0

它为我工作。显示你的'routes.rb' – 2011-04-26 19:57:34

回答

3

试试这个

feed.entry(konkurrancer, :id => konkurrancer.id) do |entry| 

UPD

feed.entry(konkurrancer, :url => konkurrancer.tracking) do |entry| 
+0

不工作我stil得到错误。我没有通往演出的路线。但我不想链接到显示操作。只是konkurrancer.tracking列是一个网址 – 2011-04-26 19:58:06

+0

看到我的更新。 – fl00r 2011-04-26 20:01:07

+0

谢谢永远不会出现在我自己的数字:) – 2011-04-26 20:04:00

相关问题