Was sind Standard respond_to Formate für Ruby On Rails und wie über das Hinzufügen von neuen gehen?
-
19-09-2019 - |
Frage
So, hier ist was ich habe:
def index
@profiles = Profile.all
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @profiles }
format.json { render :json => @profiles }
end
end
Ich möchte rss, atom hinzufügen und möglicherweise einige benutzerdefinierte diejenigen, wie einer, der das Bild für das Profil zurück.
Lösung
Sie können neue Register wie folgt aus (Ort dies in Ihrer config / environment.rb, einer der config / Umgebungen / * rb Dateien oder in einer Datei unter config / initializers.):
Mime::Type.register 'application/pdf', :pdf
Mime::Type.register 'application/vnd.ms-excel', :xls
Wie für die es auch keine:
>> Mime::SET.map(&:to_sym)
=> [:all, :text, :html, :js, :css, :ics, :csv, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :pdf, :xls]
Andere Tipps
Sie können die resource_feeder in Schienen gebaut, dies zu tun:
script/plugin install simply_helpful
script/plugin install resource_feeder
Im Profil-Controller:
def index
@profiles = Profile.all
options = { :feed => { :title => "All Profiles" },
:item => { :title => :name } }
respond_to do |format|
format.html
format.xml { render :xml => @profiles
format.json { render :json => @profiles
format.rss { render_rss_feed_for @profiles, options }
format.atom { render_atom_feed_for @profiles, options }
end
Ende
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow