RSS-Feeds /Atom-Feeds/JSON
Stacey trifft nicht allzu viele Annahmen hinsichtlich des Formates, in dem Templates geschrieben sind. Es benutzt die Dateierweiterung der Template-Datei, um herauszufinden, welcher Inhaltstyp (content type) ausgeliefert werden soll. Standardmäßig erkennt Stacey die Inhaltstypen .html, .json, .xml, .atom, .rss, .rdf und .txt.
Auf dieser Grundlage wird auch der RSS-Feed erstellt. Das Verzeichnis /content/feed
ist eine ganz normale Stacey-Seite. Der einzige Unterschied besteht darin, dass sie eine .atom-Templatedatei an Stelle einer .html-Templatedatei nutzt.
Wenn man nun also an Stelle des Atom-Formats das RSS2-Format nutzen will, muss die Datei /templates/feed.atom
umbenannt werden in /templates/feed.rss
und der INhalt muss so verändert werden:
<?xml version="1.0" encoding="utf-8"?> <rss version="2.0"> <channel> <title>@name's @feed_name</title> <link>http://@base_url/@permalink/</link> <description>@description</description> :feed_loop </channel> </rss>
Cleaning JSON
Stacey komprimiert die JSON-Ausgabe automatisch und entfernt Kommas am Ende. So erzeugt das folgende Template
get "/" do { "pages": [ foreach $children do { "title": "@title" }, endforeach ] } end
diesen Code
{"pages":[{"title":"Projects"},{"title":"About"},{"title":"Contact"}]}