Ruby on rails 3 Rails关系模型

Ruby on rails 3 Rails关系模型,ruby-on-rails-3,Ruby On Rails 3,我有一个包含社交网络的模型。ie推特,facebook。。。。然后我需要让用户模型和公司模型都有很多社交功能。我是否需要使用has_多:通过关系ie 一个用户可以有许多社交网站 一家公司可以有很多社交网站 社交属于用户和公司 像这样的事情对吗 class Social < ActiveRecord::Base belongs_to :user belongs_to :company end class User < ActiveRecord::Base has_many

我有一个包含社交网络的模型。ie推特,facebook。。。。然后我需要让用户模型和公司模型都有很多社交功能。我是否需要使用has_多:通过关系ie

一个用户可以有许多社交网站 一家公司可以有很多社交网站 社交属于用户和公司 像这样的事情对吗

class Social < ActiveRecord::Base
  belongs_to :user
  belongs_to :company
end

class User < ActiveRecord::Base
  has_many :social_networks
  has_many :socials, : through => :social_networks
end

class Company < ActiveRecord::Base
  has_many :social_networks
  has_many :socials, : through => :social_networks
end
我需要社交网络模型吗

然后我将有2个联接表:

社交用户和公司社交

这是正确的方法吗

我不认为更容易拥有和属于很多人会为此工作


希望有人能对正确的方法有所启发

测试后,使用HABTM ie没有问题

class Social < ActiveRecord::Base
  has_and_belongs_to_many :users
  has_and_belongs_to_many :companies
end

class User < ActiveRecord::Base
  has_and_belongs_to_many :socials
end

class Company < ActiveRecord::Base
  has_and_belongs_to_many :socials
end
然后创建两个连接表

社交用户和公司社交