我正在探索将现有数据库改造为使用Doctrine的可行性。
我有三个表,一个 StockRequest,SalesOrder,WorkOrder 。 StockRequest 包含 Type 和 TypeNo 字段。 Type用于决定它是否与Sales Order或WorkOrder有关系,TypeNo是 SalesOrder / WorkOrder 的关键。
维持这种关系的推荐方法是什么?
阅读学说文档,它提到了一个存储库类,我可以使用它来基于Type有条件地获取,只维护一个StockRequest实体。
另一种可能性是对StockRequest类进行子类化,以便我有 SalesOrderStockRequests 和 WorkOrderStockRequests 。
答案 0 :(得分:0)
我会用继承和关系来做,例如:
abstract class AbstractOrder {
common fields
}
class SalesOrder extends AbstractOrder {
}
class WorkOrder extends AbstractOrder {
}
然后
class StockRequest {
relationship pointing to AbstractOrder
}
当你的getOrder(){return $ this-> order; } Doctrine可以返回SalesOrder或WorkOrder
的实例