我设计域类如下:
class Invoice {
static hasMany = [invoiceOneLines: InvoiceLine, invoiceTwoLines: InvoiceLine]
}
class InvoiceLine {
static belongsTo = [invoice: Invoice]
}
发票行有 2 种类型:invoiceOneLines
和invoiceTwoLines
。然后我创建new invoice line
:我做了如下:
def invoice = new Invoice().save(flush:true)
invoice.invoiceOneLines.add(new InvoiceLine().save(flush:true))
invoice.invoiceTwoLines.add(new InvoiceLine().save(flush:true))
我创建了2 invoice lines as invoiceOneLines
和3 invoice lines as invoiceTwoLines
. 但是,当我在视图中显示它时:
invoice.invoiceOneLines.each{}
invoice.invoiceTwoLines.each{}
它显示invoiceOneLines
已更正,但在 中invoiceTwoLines
,它显示了所有(两者invoiceOneLines and invoiceTwoLines
)。
我不确定我是否设计了正确的关系。我认为它应该是一个临时表(如多对多关系)。