1
私はPlay Framework Modelの列としてJson Fieldを保存する必要があります。 DAOでの私のテーブルパーサーはScala + Play Framework + Slick - モデルフィールドとしてのJson
class Table(tag: Tag) extends Table[Model](tag, "tablename") {
implicit val configFormat = Json.format[Config]
// Fields ...
def config = column[Config]("config", O.SqlType("JSON"))
// Fields ...
}
Config
あるプレイモデルフォルダ内のモデルでケースクラスとして定義され、彼のコンパニオンオブジェクトを持っています。このオブジェクトのフィールドのInt、ダブルまたは文字列
case class Config (// fields)
object Config {
implicit val readConfig: Reads[Config] = new Reads[Config]
for {
// fields
} yield Config(// fields)
implicit val configFormat = Json.format[Config]
}
問題は、私はこのエラーが原因
Error:(28, 37) could not find implicit value for parameter tt:
slick.ast.TypedType[models.Config]
def config = column[Config]("config", O.SqlType("JSON"))
をコンパイルすることはできませんされている表にJSONとしてコンフィグモデルを保存する方法はあります(それをConfigとして読む)?
それは動作しますが、よろしくお願いします。あなたはjsonやテキストで列を保存するのが最善だと思いますか? – emmea90
私はそれらをJSONとして保存します。それには2つの理由があります。 1. DBエンジンは、その列に挿入されたJSON値の妥当性を強制します。 2.これらの値をJSONとして保存すると、その列に対して追加のJSON固有の関数と演算子を使用できるようになります。 –