J'ai un formulaire de recherche simple qui ressemble à quelque chose comme:Rails 3 - rendre js.erb partielle
app/views/Recherche/index.html.erb
<%= form_for @search, :as => :search, :remote => true, :url => {:action => "query"}, :html => {:id => 'search-form'} do |f| %>
...
<% end %
<div id="search-results"></div>
* app/contrôleurs /search_controller.rb*
def index
@search = SearchCriteria.new
end
def query
@search = SearchCriteria.new(params[:search])
# otherwise, perform search...
@summaries = do_search @search
respond_to do |format|
format.js
end
end
J'ai alors un modèle js.erb: * app/views/Recherche/_query.js.erb *
$('#search-results').update("<%= escape_javascript(render(@summaries)) %>");
Cependant, je ne vois rien à mettre dans le div 'search-results'. Ai-je besoin d'une sorte de modèle pour rendre "@summaries"? Si oui, quel serait-il nommé et où pourrais-je le placer (c'est-à-dire app/views/search?) (J'utilise jquery et rails 3)
Merci.
Je ne pense pas que jQuery a une méthode '.update'. Essayez '.html'? Est-ce que Firebug lance une erreur dans la console? – Dogbert
Je suis passé à .html, pas de différence. qu'est-ce que "render (@summaries)" va rendre? Je devine que je manque une vue ou partielle pour cela. – codecraig