【发布时间】:2013-12-16 19:18:48
【问题描述】:
我有一个Group 和一个User,它们通过 has_many :through 关系关联。我的 :through 表称为Groupuser。该表有一个 group_id、user_id 和一个状态。在创建我的组时,我会让将 current_user 的状态设置为 1(默认为 0)。
在我的组中设置 current_user 一点问题都没有,而且效果很好;它的状态我无法弄清楚。这就是我现在拥有的:
def create
@group = Group.new(group_params)
respond_to do |format|
if @group.save
@group.users << current_user
@group.groupusers.status << 1
format.html { redirect_to @group, notice: 'done' }
format.json { render action: 'show', status: :created, location: @group }
else
format.html { render action: 'new' }
format.json { render json: @group.errors, status: :unprocessable_entity }
end
end
end
以上代码抛出错误:undefined methodstatus' for #`
我的 Groupuser 架构如下所示:(我也尝试过不使用 ID,但无济于事)
create_table "groupusers", force: true do |t|
t.integer "group_id"
t.integer "user_id"
t.integer "status", default: 0
end
【问题讨论】:
标签: ruby-on-rails activerecord ruby-on-rails-4