Rails nested_form link_to_add funktioniert nicht, wenn die geschachtelte Modellinstanz vorgebildet wird

8

Ich habe einen groben Fehler bei der Integration von Ryanb's genialem nested_form Juwel in meine Rails 3.1.3 Anwendung. Ich fürchte, meine Javascript-Fähigkeiten sind zu begrenzt, um zu wissen, ob es mein Code ist (wahrscheinlich) oder der Edelstein, der geändert werden muss. Vielleicht kann hier jemand helfen.

Das Setup: Ich habe eine ": Haushalte" -Klasse, die: accept_nested_attributes_for ": members (people)". Ich betreibe einen Entwicklungsserver. Ich habe nested_form.js in das Verzeichnis / app / assets / javascripts verschoben. Ich bin fast überzeugt, dass es nur einmal bezogen wird.

Das Problem: Wenn, in der Haushaltssteuerung "neue" Methode, mache ich das:

%Vor%

Ich sehe nur die hauseigenen Felder in der Ansicht (erwartet), und die "link_to_remove" - ​​und "link_to_add" -Links rendern / löschen ein Members-Felder teilweise (erwartet). Wenn ich das aber mache:

%Vor%

Ich sehe die hauseigenen Felder in der Ansicht (erwartet), ein Rendering der partitionierten Member-native Felder (erwartet), aber die "link_to_remove" und "link_to_add" nichts tun (unerwartet). Ich kann keine weiteren hinzufügen: Mitglieder teilweise an dieser Stelle, noch entfernen Sie die bereits angezeigten: Mitglieder teilweise.

Ich bin ratlos. Unten sind abgespeckte Quelldateien, die relevant erscheinen. Ich bekomme das nested_form-Plugin aus dem git-Repository (zuletzt gebündelt 2012.04.18) ...

/app/models/household.rb

%Vor%

/app/models/person.rb

%Vor%

/app/controllers/households_controller.rb

%Vor%

/app/views/households/new.html.haml

%Vor%

/app/views/households/_form.html.haml

%Vor%

/app/views/people/_nested_person_form.html.haml

%Vor%

/app/assets/javascripts/nested_form/nested_form.js

%Vor%
admgc 19.04.2012, 14:38
quelle

1 Antwort

6

Ich hatte gerade das gleiche Problem und habe es folgendermaßen korrigiert:

Stellen Sie sicher, dass Sie eine der neuesten jQuery.js-Dateien im Kopf haben. Verwenden Sie nach dem Laden nicht die Datei nested_form.js, die vom Gem installiert wird. Verwenden Sie stattdessen jquery_nested_form.js.

Hier ist eine Lösung, die gut funktioniert, solange Sie jquery vor der jquery_nested_form-Datei verlinken:

%Vor%

Hier ist der Code für die Datei jquery_nested_form.js:

%Vor%

Hoffe, das hilft!

    
blnc 14.09.2012, 17:46
quelle