Bonjour,
est-il possible d’actualiser par xhr un partial “fait” pour un appel
remote_form_for ?
Bon, un exemple sera plus parlant :
Voici ma vue :
<% remote_form_for(:film, :url => film_path(@film), :html => {:method
=> :put}) do |form|%>
<%= render :partial => ‘form’, :object => form %>
<% end %>
Voici mon action déclenché par le submit du formulaire ci-dessus :
def update
@film = Film.find(params[:id])
respond_to do |format|
if @film.update_attributes(params[:film])
format.html { redirect_to film_url(@film) }
format.xml { head :ok }
format.js do
render :update do |page|
page.replace "form_film", :partial => 'form', :object
=> ???
end
end
else
format.html { render :action => “edit” }
format.xml { render :xml => @film.errors.to_xml }
format.js do
render :update do |page|
page.replace “form_film”, :partial => ‘form’, :object
=> ???
end
end
end
end
end
1/ Je cherche donc à actualiser le formulaire après la modification
effective de la ressource film…
Y a t’il une solution élégante qui permette de conserver le
remote_form_for pour faire cela ?
2/ autre question, dans le cas d’une approche rest, pour traiter l’appel
xhr, vaut-il mieux utiliser un nouveau format comme celui utilisé
ci-dessus (.js) ou passer par un request.xhr ? Quelle est la solution la
plus propre ? Je découvre REST donc peut-être cette question est-elle
stupide ?
A part cela, découvrant REST depuis peu, j’adhère complètement à cette
approche génial !
Merci d’avance pour vos réponses.
Cdt,
JD