3 ms·
We do not use migrations with JSON. Adding and removing happens on the application layer with using Option[_] monads in the data model. Add a field means add O
by _Codemonkeyism 8y ago
We do not use migrations with JSON.
Adding and removing happens on the application layer with using Option[_] monads in the data model. Add a field means add Option[_], removing a field means making e.g. String an Option[String] - or fill with default values on read. If we drop a field over time we ignore it during writes.
case class Person(name:String)
adding a job field after some time becomes
case class Person(name:String, job:Option[String])
and application code needs to deal with it.
Works for us, compared to my previous jobs where we used SQL and migrations.