2012-06-24 13 views
11

は、私が実際の(すなわち、単精度浮動小数点)をロードし、このような行パーサを用いてのPostgreSQLから列を入力しようとしている値could not find implicit value for parameter extractor: anorm.Column[Float]Anormパースフロートは、再生フレームワーク2.0で

倍精度の型を使用すると、すべて正常に動作します。 Anormで単精度浮動小数点数を使うことはどういうわけか?

答えて

13

あなたは常に既存のものに独自の列パーサベースを作成することができます

implicit def rowToFloat: Column[Float] = Column.nonNull { (value, meta) => 
    val MetaDataItem(qualified, nullable, clazz) = meta 
    value match { 
    case d: Float => Right(d) 
    case _ => Left(TypeDoesNotMatch("Cannot convert " + value + ":" + value.asInstanceOf[AnyRef].getClass + " to Float for column " + qualified)) 
    } 
} 

を、それは正しいこと(列定義に依存します)しないことがあり、JDBCドライバによって返された値の型に一致します。

+1

こちらのコードもご覧ください:https://github.com/isaka/Play20/commit/27f952257d775e1bfb4a0c61de6e0ef9c5a555d6 – Mortimer

関連する問題