开发者

Custom formats in Ruby on Rails

I'm creating a website in Rub开发者_Python百科y on Rails, where users can login using RESTful Authentication. Someone can get a specific user using html, xml and json, just like scaffolding. But I want to add one more format: vCard (e.g. /users/1.vcard). This has a specific format, but how do I define my own formats? Using views, or must I use another way? Thanks


In your /config/initializers/mime_types.rb file, add a new registration for your format. It should look something like this:

Mime::Type.register "text/x-vcard", :vcard  #The :vcard is the important part

After that (you'll have to restart your app to pick up the change), you can respond to the symbol like any other format:

# then in your controller action
def show
  respond_to do |format|
    format.html # render html
    format.vcard { #render vcard }
  end
end

Adding from comments (thanks nanda):

In your views folder, then, you would put the vCard template into a show.vcard.erb file (for example).

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜