Неявный TableHelper с 2.12.1?
Я что-то упустил полностью? Попытка построить абсолютно базовый проект с фантомом вызывает эту ошибку:
could not find implicit value for parameter helper: com.outworkers.phantom.macros.TableHelper[models.Accounts,models.Account]
build.sbt использует версию 2.12.1.
Account.scala это:
package models
import com.outworkers.phantom.dsl._
case class Account(username: String)
abstract class Accounts extends Table[Accounts, Account] with RootConnector {
object username extends StringColumn with PrimaryKey
}
Я думал, что я следовал за документацией быстрого запуска, но я не могу заставить это скомпилировать вообще. Между тем, проект Play-Cassandra компилируется просто отлично.
1 ответ
Пишу здесь для будущих гуглов, это потому, что ваша схема не определяет PartitionKey
, что является требованием. Компилятор должен выдавать предупреждение при вызове макроса.
package models
import com.outworkers.phantom.dsl._
case class Account(username: String)
abstract class Accounts extends Table[Accounts, Account] {
object username extends StringColumn with PartitionKey
}
На заметку, расширяющую Table
уже приносит в RootConnector
, поэтому вам не нужно явно расширять его снова, как это было в старых версиях фантомного использования CassandraTable
вместо Table
,