scala - How to model enum types in phantom dsl? -


my case class contains enum parameter follows:

case class user(role: userrole.userrole, name: string)  object userrole extends enumeration {   type userrole = value   val admin, user = value } 

how model case in example: https://github.com/thiagoandrade6/cassandra-phantom/blob/master/src/main/scala/com/cassandra/phantom/modeling/model/genericsongsmodel.scala ?

any code samples provided helpful.

you need use enumcolumn, created reason. if want use enum key, need create primitive using default helper methods.

you can use both flavours of defining enum.

object records extends enumeration {   type records = value   val typeone, typetwo, typethree = value }  object namedrecords extends enumeration {   type namedrecords = value   val 1 = value("one")   val 2 = value("two") }  object enum extends enumcolumn[records.type](this, records) 

in case be:

object role extends enumcolumn[userrole.type](this, userrole) 

to use index, need:

implicit val userroleprimitive = primitive(userrole) 

update of phantom 2.0.0+

object role extends enumcolumn[userrole](this) 

you don't need define additional implicits, enums natively suported indexes.


Comments

Popular posts from this blog

javascript - Thinglink image not visible until browser resize -

firebird - Error "invalid transaction handle (expecting explicit transaction start)" executing script from Delphi -

mongodb - How to keep track of users making Stripe Payments -