我有两个表users
,providers
并且有 has_and_belongs_to_many 关系。除了和之外,连接表providers_users
还有一个额外的列。uid
user_id
provider_id
如何添加由和组成users.id
的新记录?我可以添加,但不知道如何添加.providers.id
uid
users.id
providers.id
uid
我有两个表users
,providers
并且有 has_and_belongs_to_many 关系。除了和之外,连接表providers_users
还有一个额外的列。uid
user_id
provider_id
如何添加由和组成users.id
的新记录?我可以添加,但不知道如何添加.providers.id
uid
users.id
providers.id
uid
你不能。如果要给join table添加属性,需要make成模型,然后在relationships上使用:through来达到同样的效果(这其实是我最喜欢的habtm关系实现方式):
class ProviderUser < ActiveRecord::Base
belongs_to :user
belongs_to :provider
validates_presence_of :uid
end
class User < ActiveRecord::Base
has_many :provider_users
has_many :providers, :through=>:provider_users
end
class Provider < ActiveRecord::Base
has_many :provider_users
has_many :users, :through=>:provider_users
end