我正在使用Rails 3的Active Record。我有一个类has_many类的用户。我想从共享相同的内存中用户实例的用户实例化类别。
默认的Active记录行为为每个类别创建一个新的用户实例。有什么方法可以改变这种行为吗?
以下是我的代码的一些片段。您可以注意到我尝试使用:inverse_of,但没有成功......
class Category < ActiveRecord::Base
attr_accessor :name
attr_accessible :name, :user
belongs_to :user, :inverse_of => :categories
end
class User < ActiveRecord::Base
attr_accessor :key
attr_accessible :categories, :key
has_many :categories, :inverse_of => :user
end
我有以下规范来测试所需的行为:
user = User.first
user.key = @key # key is an :attr_accessor, not mapped to db
category = user.categories.first
category.user.key.should == user.key # saddly, it fails.. :(
有什么建议吗?
感谢您阅读我的问题!