我有一个模型组和模型用户
它们通过“has_many :through => groups_users”双向连接
groups_users 表有一个属性,称为 moderator,指定用户是否是组的主持人
当我尝试更新加入模块属性时,我出错了
我现在这样做的方式:
@group_membership=@group.groups_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
代码产生mysql错误:
Unknown column 'id' in 'where clause': UPDATE `groups_users` SET `moderator` = 1 WHERE `id` = NULL
有没有更好的方法来做到这一点,或者我应该将 id 列添加到 groups_users 加入模型表并在 id 上建立索引?