如何使用scala在模型类中映射多个类型?

时间:2018-02-08 06:04:59

标签: java scala playframework language-concepts

我想在模型类中映射多个类型,模型类是从控制器和存储库类引用的。

例如:

   case class ManagedService(
     ...some parameters,
     attributes: Seq[Attribute],
     ...etc
   ) extends RelatedResource {
     override def resourceId = name
     override def resourceType = "instance"
   }


   trait RelatedResource {
     def resourceId: Option[String]
     def resourceType: String
   }

现在,如果我想添加override def resourceType = "memory"override def resourceType = "readers"以及实例,我怎么能 加他们?这是使用www.example.com/type=memory执行网址。

1 个答案:

答案 0 :(得分:2)

你可以在你的case类中覆盖trait的方法作为构造函数val,如下所示:

  case class ManagedService(
     ...some parameters,
     resourceId: Option[String],
     resourceType: String
     attributes: Seq[Attribute],
     ...etc
   ) extends RelatedResource