Ruby on Rails

トップ > チップス > Ruby on Rails
2015-04-28, rails

XMLを出力する

JSONと同じ要領ですね。.xml.builderと拡張子のついたビューを用意してxmlというビルダオブジェクトを使って好きな構文を記述できます。以下はsitemapのxmlを出力するサンプルです。

app/views/sitemaps/index.xml.builder
xml.instruct!
xml.urlset xmlns: "http://www.sitemaps.org/schemas/sitemap/0.9" do
  xml.url do
    xml.loc "http://lmlab.net/foo"
    xml.changefreq "monthly"
    # xml.lastmod
    # xml.priority
  end
  xml.url do
    xml.loc "http://lmlab.net/bar"
    xml.changefreq "weekly"
    # xml.lastmod
    # xml.priority
  end
end

sitemaps/index.xmlにアクセスすると以下のようなXMLが出力されていることを確認できます。

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>http://lmlab.net/foo</loc>
    <changefreq>monthly</changefreq>
  </url>
  <url>
    <loc>http://lmlab.net/bar</loc>
    <changefreq>weekly</changefreq>
  </url>
</urlset>

参考URL

この記事は役に立ちましたか?