如何在Rails的同一张表中创建多对多

时间:2018-08-23 21:09:03

标签: ruby-on-rails ruby associations rails-activerecord

我只想在Rails中创建一个表(域:包含域),该表包含多个字段:Id,Name(包含域和子域)和TLD(顶级域)。例如:此帐户和引荐来源中的account.referal.com将作为单独的值存储在“名称”中,而com将存储在TLD字段中。并且域和子域应在同一表中具有多对多关系,并应基于该关系从表中形成URL。

ask.facebook.com: ask => 1 facebook => 1

Domains Table
 ID
 Name
 TLD
Domain Relationship
 Parent.      Child.
 Domain Key.  Domain Key.
 1            1

通过引用id和tld将在将来创建一个URL。

1 个答案:

答案 0 :(得分:0)

您需要添加另一个表(多对多)来保存Domains表的关系:

Class DomainChildren
      belongs_to :domain
      belongs_to :domain_child, class_name: 'Domain'
end


Class Domain
     has_many :domain_children     
End