2010-12-03 3 views
0

Vielen Dank für Ihre Hilfe. Die Fehler treten während der Implementierung accepts_nested_attributes_for auf. Ich bekommeSchienen 3 undefinierte Methode `Ereignisse 'für Nil: NilClass bei Verwendung von acces_nested_attributes_for

ActionView::Template:Error (undefined method 'events' for nil:class) & NoMethodError in app/views/users/index.html.erb where line #12. 

alle Dateien anzeigen @https://gist.github.com/726828

Zusammengefasst das User Modell accepts_nested_attributes_for die event Klasse. Siehe die gist-Dateien. Nochmals vielen Dank

Antwort

3

In dem, was ich sehe, haben Sie @user im Index nicht (ich nehme an, das ist die users/index), deshalb ist es ein Fehler beim Versuch, auf nil.events zuzugreifen.

Im Index haben Sie @users. Was Sie wollen, können tun, ist mit einem Teil in users/index für jeden Benutzer zu machen

<%= render :partial => "user", :collection => @users %> 

und erstellen Sie ein users/_user.html.erb wo Sie setzen, was Sie zeigen wollen.

Durch die Art und Weise in Ihrem Teil haben Sie Zugriff auf user haben und nicht @user

klingt gut zu dir?

+0

Dank @ecoologic, ich werde versuchen und Ihre Vorschläge umsetzen. – brg

+0

Thaks wieder @ecoologic. Ich habe die von Ihnen vorgeschlagenen Änderungen vorgenommen und Sie können die neuen Dateien hier https://gist.github.com/726898 sehen. Es ist jedoch bis zum gleichen Fehler. Glauben Sie, dass es etwas damit zu tun hat, Daten aus der Ereignistabelle im Benutzer/Index anzuzeigen? Wie ich dachte, mit acquires_nested_attributes_for soll das erlauben. Danke für Ihre Hilfe. – brg

+0

Sie sollten auf ** Benutzer ** ohne @ zugreifen, ich empfehle Ihnen, eine Debugger-Zeile <% debugger%> zu setzen und einen Blick darauf zu werfen, was Sie haben und was nicht. – ecoologic