2011-11-07 2 views
2

좋은 하루!Rails 3.1 및 RSS 자동 감지

저는 웹 응용 프로그램의 브라우저를 통해 RSS 자동 검색을 구현하려고합니다. auto_discovery_link_tag에 대해 알고 있고 그것을 사용하려고했습니다. Safari에서 테스트 해 보겠습니다. 그러나 여기서 문제는 - 내가하려고하면 :

/app/views/layouts/application.html.erb 난 그냥

을하려고하면

<%= auto_discovery_link_tag(:rss, {:controller => "users_controller", :action => "show"}) %> 

레일의 서버는

Routing Error 

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

을 보여줍니다

/app/views/layouts/application.html.erb

<%= auto_discovery_link_tag(:rss) %> 

브라우저는 각 페이지에서 RSS를 사용할 수 있다는 것을 보여 주며 표시하지 않습니다. 여기

내 코드입니다 :

/app/controllers/users_controller.rb

class UsersController < ApplicationController 

    def show 
    @user = User.find(params[:id]) 
    @title = @user.name              
    @microposts = @user.microposts.paginate(:page => params[:page]) 

    respond_to do |format| 
     format.html 
     format.rss { render :layout => false } 
    end 
    end 

xml.instruct! :xml, :version => "1.0" 
xml.rss :version => "2.0" do 
    xml.channel do 
    xml.title "Feed of #{@user.name}" 
    xml.description "Rails. Feed of user." 

    for post in @microposts 
     xml.item do 
     xml.title post.id 
     xml.description post.content 
     xml.pubDate post.created_at.to_s(:rfc822) 
     end 
    end 
    end 
end 

답변

5
/app/views/users/show.rss.builder

_controller 부품이 필요하지 않습니다. 레일즈가 자동으로 부품을 추가합니다 :

<%= auto_discovery_link_tag(:rss, {:controller => "users", :action => "show"}) %>