2010-04-01 12 views
8

AtomFeedHelper kullanıyorum ve her giriş, her girişi, varsayılan polymorphic_url olmayan bir URL'ye bağlamanız gereken tek bir feed haricinde çalışıyor kayıt.Rails AtomFeedBuilder Entry: URL etiketi URL'lerde görünür ancak bağlantı etiketinde değil

Dokümantasyon için giriş için bir: url seçeneği belirledim. Bu, atom düğümünde <url> etiketini doğru bir şekilde oluşturur, ancak <link rel="alternate" hala varsayılan polymorphic_url değerini gösterir. Kaynağa ve belgelere baktığımda bunun neden olduğunu anlamıyorum.

<entry> 
    <id>tag:myhost.mydomain.com,2005:SiteReport/2</id> 
    <published>2010-03-30T13:11:07-07:00</published> 
    <updated>2010-03-30T13:11:07-07:00</updated> 
    <link rel="alternate" type="text/html" href="http://myhost/site_reports/2"/> 
    <title>Test Title</title> 
    <content type="html">Test Content</content> 
    <url>http://myhost/page/</url> 
    <updated>2010-03-30T13:11:07Z</updated> 
    <author> 
     <name>Author</name> 
    </author> 
    </entry> 

ben url etiketi değerini eşleşecek şekilde bağlantı etiketinde href değerini istiyorum: Burada
atom_feed do |feed| 
    feed.title("Reports") 
    feed.updated(@reports.first.created_at) 
    for report in @reports 
    content = report.notes 

    feed.entry(report) do |entry| 
     entry.title(report.title) 
     entry.content(content, :type => 'html') 
     entry.url("http://myhost/page/") 
     entry.updated(report.updated_at.strftime("%Y-%m-%dT%H:%M:%SZ")) 
     entry.author do |author| 
     author.name(report.user.username) 
     end 
    end 
    end 

end 

bir sorun düğümün bir örnek: Burada

bir örnek oluşturucu var ama öyle değil.

Burada girişi http://api.rubyonrails.org/classes/ActionView/Helpers/AtomFeedHelper/AtomFeedBuilder.html

bu hat düzgün çalışması olacağını varsaymak istiyorum için listelenen kaynağında baktığımızda:

@xml.link(:rel => 'alternate', :type => 'text/html', :href => options[:url] || @view.polymorphic_url(record)) 

karıştı. Daha önce kimse bununla karşılaşmış mıydı?

Herkese teşekkürler! Ben "güncellenmiş" ve "yayımlanan" etiketleri değiştirmek için bu aynı yöntemi kullanmak başardı

feed.entry(report, :url => report_url(report.slug)) do |entry|

cevap

18

Ben geçirerek bu başarılabilir Her giriş için de.
+0

sayesinde: feed.entry yöntemine doğrudan url seçeneği: – konyak

İlgili konular