据我所知,您只能在 Set 列上包含带有二级索引的查询,而不是 List。
这就是你要做的:object genre extends SetColumn[Table, Record, Int](this) with Index[Set[Int]]
。这两种类型必须Table
与Record
您在CassandraTable
上面扩展时提供的内容相匹配,如下所示:
class MyTable extends CassandraTable[MyTable, MyRecord] {
object genre extends SetColumn[MyTable, MyRecord, Int](this) with Index[Set[Int]]
}
希望这是有道理的。也要小心ListColumn
,所有集合列都需要TableType
andRecordType
参数。
更新
在较新版本的 phantom 中,您不需要提供表和记录的类型。只需执行以下操作:
class MyTable extends CassandraTable[MyTable, MyRecord] {
object genre extends SetColumn[Int](this) with Index[Set[Int]]
}
查看此测试以获取有关使用索引集合的示例,然后查看此表以获取有关如何定义此类表的示例。
问候。