我正在一个项目上,并且有一个Invoice
域类,当前是hasOne=[billingAddress:Address]
。当我尝试启动服务器时,出现以下错误:
hasOne property [Invoice.billingAddress] is not bidirectional. Specify the other side of the relationship!
我不想分配关系的另一端...发票有帐单地址,但地址不属于发票。地址属于用户!!!
处理这种情况的正确方法是什么?
最佳答案
听起来您只需要一个普通的关联而不是hasOne
:
class Invoice {
// other properties
Address billingAddress
}
hasOne
机制是一种更改关联的数据库表示形式的方法,使用传统的Address billingAddress
您将在billing_address_id
表中最终显示invoice
列,而使用hasOne
时,该关联由address
表中的外键表示-此表示形式只允许每个Invoice
一个Address
,这就是为什么关联必须是双向的。