2017-04-06 3 views
1

Ich habe einen Controller, der ein Start-und Enddatum von URL-Parameter (GET) und die alle Fahrten innerhalb dieses Zeitraums erhalten und gibt sie in meiner Ansicht Vorlage.link_to Pfad (: xml) mit Parametern in Rails 5

@from = params[:from].to_date.beginning_of_day 
@until = params[:until].to_date.end_of_day 
@rides = current_user.rides.where(:date => @[email protected]) 

Wenn ich dies als HTML kein Problem rendern. Aber ich möchte auch in der Lage sein, als xml zu rendern, ich habe meine xml.builder-Vorlage geschrieben, aber Probleme beim Übergeben der Datumsbereichsparameter.

Im Moment sieht mein link_to dies wie:

<%= link_to "Export", report_rides_path(:xml) %> 

Und in meinem Controller ich habe:

respond_to do |format| 
     format.html 
     format.xml { send_data(render_to_string(:template=>"report/rides"), :type=>"text/xml",:filename => "export.xml") } 
end 

Gibt es eine Möglichkeit, die Parameter in meinem link_to senden kann?

Antwort

0

Es gibt eine reservierte Option namens "Format", die Sie verwenden sollten:

<%= link_to "Export", report_rides_path(format: :xml) %> 

, die so etwas wie /reports/rides.xml generieren. (Ich weiß nicht, was Sie Routen sind)