Also ich verstehe, wie man Teile rendert, wenn zum Beispiel ein Link angeklickt wird, aber was ist, wenn ich den Teil laden möchte, nachdem die Seite gerendert wurde?
show.html.erb
weather.js.erb
$( "#weather" ).html( "<%= escape_javascript(render( :partial => 'weather' )) %>");
weather.html.erb
<%= Time.now %> # Aus Gründen der Kürze. Das macht eigentlich mehr.
Controller
def weather
slow_api_request
respond_to do |format|
format.js {render :layout => false}
end
Aber wie kann ich dann die Anfrage für den Teil starten, nachdem die Seite geladen wurde (weil die Aktion ziemlich langsam ist, um die Daten von der API abzurufen)? Ich verwenden Rails UJS, bin nur etwas verwirrt.