2010-09-13 56 views
2

我想我在这里遇到了一个非常基本的问题,但我似乎无法把我的手指放在我做错的地方。Rails,将外键保存在`belongs_to`关联中

所以这里的问题是,当我保存foreign_key为模特的belongs_to关联模型的实例(在这种情况下,user_id不被保存,所以我不得不这样做:

def new 
    @thing = Thing.new(:user_id => current_user.id) 
end 

def create 
    @thing = Thing.new(params[:thing]) 
    @thing.user_id = current_user.id 

    if @thing.save 
    redirect_to @thing 
    else 
    render 'new' 
    end 
end 

不应该user_id会自动保存,如果我的模型有这个协会?

class Thing < ActiveRecord::Base 
    belongs_to :user 
end 

我有摆在首位这一问题的原因是因为创业板friendly_id有改变了我所有的ids的工作方式,现在返回对象slu ... ...在我看来很烦人。

回答

4

我会尝试@thing.user = User.find(current_user.id)而不是你的控制器。你是否也有在用户模型中声明的has_many :things关联?

相关问题