当在字段中使用Option[]
时,Squeryl需要一个零参数构造函数。我意识到我可以如何为Long
创建这样的构造函数,如0L
,但是如何为时间戳或日期创建这样的事物?斯卡拉timestamp /日期零参数构造函数?
基本上我需要完成这样的:
def this() = this(0L,"",TIMESTAMP,TIMESTAMP,0L,"","","","",Some(""),Some(""),"",DATE,DATE,false,false,false,Some(0L),Some(0),Some(0L))
下面是我最初是如何发现的时间戳和日期的问题。
背景
收到以下错误在我玩游戏! 2.0 Scala的应用(也使用Squeryl):
Caused by: java.lang.RuntimeException: Could not deduce Option[] type of field 'startOrder' of class models.Job
此字段在models.Job:
@Column("start_order")
var startOrder: Option[Int],
而Postgres DB它被定义为integer
。 Play中有不同的处理! 2.0的模型,这是一个错误,或者它是一个Squeryl问题?谢谢!
堆栈跟踪,貌似Squeryl问题
Caused by: java.lang.RuntimeException: Could not deduce Option[] type of field 'startOrder' of class models.Job
at scala.sys.package$.error(package.scala:27) ~[scala-library.jar:na]
at scala.Predef$.error(Predef.scala:66) ~[scala-library.jar:0.11.2]
at org.squeryl.internals.FieldMetaData$$anon$1.build(FieldMetaData.scala:441) ~[squeryl_2.9.1-0.9.4.jar:na]
at org.squeryl.internals.PosoMetaData$$anonfun$3.apply(PosoMetaData.scala:111) ~[squeryl_2.9.1-0.9.4.jar:na]
at org.squeryl.internals.PosoMetaData$$anonfun$3.apply(PosoMetaData.scala:80) ~[squeryl_2.9.1-0.9.4.jar:na]
at scala.collection.immutable.HashMap$HashMap1.foreach(HashMap.scala:176) ~[scala-library.jar:0.11.2]
啊完美,我想'有些()'必须包裹它,但是我对包装它感到困惑,谢谢! – crockpotveggies 2012-03-28 06:08:47