代码之家  ›  专栏  ›  技术社区  ›  Schroedinger

Rails数组中单个对象的多个实例?

  •  1
  • Schroedinger  · 技术社区  · 16 年前

    G'Day的人,试图建立一个小的发票系统(可以用虾生成PDF),但在数组中生成多个独立项目时遇到了问题。我有一个invoice类,它有许多项,但是当我试图向invoice中添加一个项的倍数时,它实际上不会将该项添加到invoice中,也不会更新总数。

    我最好使用行项目模型抽象,它对项目有一个has-one,但它是一个保持发票中项目倍数的整数?

    1 回复  |  直到 16 年前
        1
  •  3
  •   Winfield    16 年前

    听起来您有多对多关系,一个项目可能在多个发票中(一次以上),一个发票有多个项目。

    class Invoice < ActiveRecord::Base
      has_many :invoice_items
      has_many :items, :through => :invoice_items
    end
    
    class InvoiceItem < ActiveRecord::Base
      belongs_to :invoice
      belongs_to :item
    end