我一直在将 STI 用于名为 Journey 的表。人们将发布旅程请求/报价,因此鉴别器将是:驾驶员或乘客,这意味着将有愿意开车和搭乘其他乘客的人或只是搭便车的人(乘客)发布旅程。所以这两个会共享大部分属性(例如出发日期、来源、目的地等),但是由于发帖用户的类型,会有一些名称冲突。
例如,如果我是一名乘客,我可以指定我想和我的朋友一起旅行(因此,PassengerCount = 2,即我们寻找至少有 2 个可用座位的司机)。或者我可能会注意到,我想随身携带一些行李(因此 HaveLuggage = true,即我正在寻找可以带我行李的游乐设施)
另一方面,如果我是司机,我应该填写一个表格,我可以在其中指定可用座位的数量 (AvailableSeats),并且我可能会注意到我不能运输行李 (TakesLuggage=false)。
如您所见,PassengerCount - AvailableSeats 和 HaveLuggage - TakesLuggage 列是相同的,只是它们的名称与海报的角度不同。
所以问题是,为了尽量减少混淆,我应该遵循什么命名约定?另外,拥有一张这样的桌子(STI)是个好主意吗?如果没有,您会推荐什么替代方案?