Merci pour ta réponse Yann, mais je me demande quoi mettre dans les
paramètres du constructeur qui doit remplir ces critères d'init :
* def initialize(object_name, object, template, options, proc)
*
render :locals => {:f => CssFormBuilder.new(:dossier, @dossier, ?, ?, ?},
:inline => "<%= f.checkbox_list :child_ids,
Richard
Yann KLIS a écrit :
> Etant donné que tu ne peux pas balader les instances de tes objets sur
> le web (entre une page web et ton serveur via AJAX par exemple), tu
> vas être obligé d'en recréer une. Avec fields_for par exemple.
>
> ++
>
> yk
>
> Le 20/09/07, Richard HALLIER<[EMAIL PROTECTED]> a écrit :
>
>> Bonjour à tous,
>> J'aimerais vous soumettre un problème qui est sans doute trivial, mais
>> que je n'arrive pas à résoudre proprement.
>> Voila mon code coté vue :
>>
>> <% css_form_for :dossier, @dossier, :url => dossier_path(@dossier),
>> :html => {:method => :put} do |f| %>
>> <%= f.select :parent, parents %>
>> <%= observe_field "dossier_parent",
>> :update => "children_panel",
>> :url => {:action => :populate_children},
>> :with => "'parent_id=' +
>> encodeURIComponent(value)" %>
>> <div id="children_panel">
>> <%= f.checkbox_list :child_ids, @dossier.children,
>> children %>
>> </div>
>> <% end %>
>>
>> Sur un changement de valeur pour la liste déroulante, un appel ajax est
>> fait au controlleur qui doit réafficher la liste des checkbox.
>> Dans cette méthode, populate_children, j'ai pensé à ce code :
>>
>> render :locals => {:f => ?},
>> :inline => "<%= f.checkbox_list :child_ids,
>> @dossier.children, children("+params(:parent_id)+" %>
>>
>> Je pourrais aussi jouer sur du partial, mais le probleme reste le meme,
>> comment obtenir cette référence à :f, cad à l'instance de mon form
>> builder ? Suis-je obligé d'en recréer une ?
>> Merci de votre attention.
>> Richard
>>
>>
>
> >
>
>
>
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---