Bonjour, tous les "*_nested_set" rangent tes enregistrements dans la BDD avec des champs "lft" et "rgt", une astuce qui permet de simuler un rangement arborescent : la théorie est intéressante et étonnamment simple, tu as les dessins et le texte sur awesome, better ou sur le plugin original.
Changer directement le parent_id "casserait" ces astuces de calcul, c'est pour ça que c'est interdit. Il faut donc utiliser les méthodes d'awesome pour déplacer/insérer un objet dans l'arbre, typiquement "move_to_*". Et donc supprimer parent_id de tes params, Ça te donne donc un code en deux étapes qui ressemble à : @obj.move_to_child_of(params[:obj].delete[:parent_id]) @obj.update_attributes(params[:obj]) Ajoute tout le code de gestion et de sécurité que tu veux :) Attention : "bouger" le noeud re-sauve l'objet dans la BDD. C'est important à noter si tu as des triggers etc. Bon courage, -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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] -~----------~----~----~----~------~----~------~--~---
