光滑,如何将查询映射到继承表模型?即
我有表A,B,CA是"父"表,B&C是"子"表我想知道的是我应该如何使用光滑模型这样A将是抽象和B&C具体类型,以及查询A中的行将导致B或C对象
像JPA那样的东西InheritanceType.TABLE_PER_CLASS.
考虑我目前正在进行的以下简化域模型:
case class Product(val id : Long, val name : String, product : Option[Product], category : Option[ProductCategory])
case class Price(val id : Long, val amount : Double, val conditions : Seq[Condition])
trait Condition {
def isTrue(product: Product):Boolean
}
case class ManufacturerNameCondition(val id : Long, val name : String){...}
case class DateCondition(val id : Long, val validFrom : Date, val validTo : Date){...}
Run Code Online (Sandbox Code Playgroud)
这个模型代表什么?
它代表一种简单的价格服务,允许为产品或产品类别定义多个价格.产品的最终价格通过检查所有匹配价格及其相关条件来确定.例如,产品可能有正常价格和一个额外价格,这只是今天有效,因为它有一个DateCondition.
我的问题是什么? 价格可能与多个条件相关联.每种情况可以是另一种类型.所以我问自己应该如何用Slick(=多态关系)解决这个问题.基本上我想要一个类似DAO的界面,它可以获取价格以及相关条件.
我的问题:
Plz注意: 是的,我没有代码可以显示我尝试过的内容,但是现在我需要一些方向来寻找.目前我不知何故失去了:-)