Ruby on rails ActiveRecord:集合与lt&书信电报;对象和关联=(关联)

Ruby on rails ActiveRecord:集合与lt&书信电报;对象和关联=(关联),ruby-on-rails,associations,has-many,belongs-to,rails-activerecord,Ruby On Rails,Associations,Has Many,Belongs To,Rails Activerecord,让我们举一个例子: class Subscription < ActiveRecord::Base belongs_to :user end class User < ActiveRecord::Base has_many :subscriptions end u1 =User.new s1 = Subscription.new 类订阅

让我们举一个例子:

class Subscription < ActiveRecord::Base
 belongs_to :user
end

class User < ActiveRecord::Base
 has_many :subscriptions
end

u1 =User.new
s1 = Subscription.new
类订阅
根据我的说法,以下两行应该是等效的:

u1.subscriptions << s1, and 
s1.user = u1
u1.0订阅

它给出了u2

它将在保存s1后建立该关联。对于u1.subscriptions分配,您正在处理内部分配的结果(也未保存)。如果您想查看等效的内容,请在分配后查看s1.user\u id。
u1.subscriptions << s1
[s1]

u1.subscriptions << s2
[s1,s2]
s1.user = u2