2016-04-23 15 views
0

Ich habe ein Modell namens Benutzer. Der Benutzer bettet viele Posts ein.Mongoid Rails Update-Fehler für Dokumente mit eingebetteten Dokumenten

Nach Benutzer Datensätze Beiträge eingebettet ist, wenn ich versuche, ein anderes Feld zu aktualisieren, erhalte ich die Fehler

NoMethodError: undefined method `each' for false:FalseClass 

I-Update mit bin als

user = User.find('56da7307421aa90ca4000000') 
user.update(likes: 12) 

folgt Wenn ich embeds_many :posts entfernen Benutzermodelldatei, die obige Aktualisierungsabfrage funktioniert einwandfrei.

Antwort

2

Endlich habe ich das Problem selbst herausgefunden. Das Problem war das Ergebnis einer schlechten schriftlichen Verbindung. Es muss wie unten angegeben sein. Aber ich hatte die embedded_in Beziehung in Post-Modell verpasst.

class User 
    embeds_many :posts 
end 

class Post 
    embedded_in :user 
end 

Schreiben embedded_in :user innen Beitrag Modell löste das Problem.

+1

Vergessen Sie nicht, morgen zurückzukommen und Ihre eigene Antwort zu akzeptieren. –