Scala Cassandra Phantom-找不到参数helper的隐式值:com.outworkers.Phantom.macros.TableHelper[用户,用户]
我正在使用Cassandra Phantom驱动程序构建一个带有Scala和Cassandra的应用程序。我的代码如下所示:Scala Cassandra Phantom-找不到参数helper的隐式值:com.outworkers.Phantom.macros.TableHelper[用户,用户],scala,cassandra,phantom-dsl,Scala,Cassandra,Phantom Dsl,我正在使用Cassandra Phantom驱动程序构建一个带有Scala和Cassandra的应用程序。我的代码如下所示: case class User(id: UUID, name:String) abstract class Users extends CassandraTable[Users, User] with RootConnector { object id extends UUIDColumn(this) with PartitionKey object name
case class User(id: UUID, name:String)
abstract class Users extends CassandraTable[Users, User] with RootConnector {
object id extends UUIDColumn(this) with PartitionKey
object name extends StringColumn(this)
def save(user: User): Future[ResultSet] = {
insert
.value(_.id, user.id)
.value(_.name, user.name)
.consistencyLevel_=(ConsistencyLevel.ALL)
.future()
}
def getById(id: UUID): Future[Option[User]] = {
select.where(_.id eqs id).one()
}
}
但当我试图编译代码时,它会给我以下错误:
could not find implicit value for parameter helper: com.outworkers.phantom.macros.TableHelper[Users, User]
我无法理解为什么在遵循文档时会发生此错误
幻影版本:2.7.6
Scala:2.11.2
case class User(id: UUID, name:String)
abstract class Users extends Table[Users, User] with RootConnector {
object id extends UUIDColumn(this) with PartitionKey
object name extends StringColumn(this)
def save(user: User): Future[ResultSet] = {
store(user)
.consistencyLevel_=(ConsistencyLevel.ALL)
.future()
}
def getById(id: UUID): Future[Option[User]] = {
select.where(_.id eqs id).one()
}
}
我刚刚用2.7.6编译了这篇文章,您也不需要手动实现为您生成的
insert
。您说得对!实际上是insert()
产生了错误。将其替换为store()。感谢您的回复:)