Ich habe ein Modell-Gruppe und Modell BenutzerWie kann ich has_many: through Join-Modellattribut in Rails aktualisieren?
Sie sind beide Richtungen verbunden mit „has_many: durch => groups_users“
groups_users Tabelle hat ein Attribut namens Moderator, der angibt, ob ein Benutzer ein Moderator das ist Gruppe
wenn i Modul Attribut beitreten zu aktualisieren versuche, erhalte ich einen Fehler
Art, wie ich es jetzt tue:
@[email protected]_users.find_by_user_id(@user.id)
if @group_membership!=nil
@group_membership.moderator=true
else
@group_membership=GroupsUser.new(:user_id => @user.id, :group_id => @group.id, :moderator => true)
end
@group_membership.save
-Code produziert mysql Fehler:
Unknown column 'id' in 'where clause': UPDATE `groups_users` SET `moderator` = 1 WHERE `id` = NULL
Gibt es schönere Art und Weise, dies zu tun oder sollte ich id-Spalte zu den groups_users hinzufügen join auf id Modelltisch und indizieren?