Ошибка индекса не найденного значения на astic4s
Я пытаюсь проиндексировать некоторые данные для упругого поиска с помощью APIastic4s
но я получаю ошибку компиляции not found: value index
это код, позже я сопоставлю поля объекта js с упругими полями поиска, но сейчас я просто хочу проиндексировать контрольный пример
import com.sksamuel.elastic4s._
def indexComment(commentList: List[JsObject]) {
val client = ElasticClient.local
for (comment <- commentList) {
val id = comment.\("id").as[String]
client.execute {
index into "posts/test" id id.toString() fields (
"name" -> "London",
"country" -> "United Kingdom",
"continent" -> "Europe",
"status" -> "Awesome")
}
}
}
}
и это файл SBT
libraryDependencies ++= Seq(
jdbc,
anorm,
cache,
"org.webjars" %% "webjars-play" % "2.2.1",
"org.webjars" % "bootstrap" % "3.1.0",
"org.webjars" % "jquery" % "2.1.0-1",
"com.sksamuel.elastic4s" %% "elastic4s" % "1.0.0.0"
)
и это полная ошибка
[error] /home/mik/programing/posts/app/helper/Helper.scala:27: not found: value index
[error] index into "posts/test" id id.toString() fields (
[error] ^
[error] one error found
[error] (compile:compile) Compilation failed
[error] Total time: 2 s, completed Feb 15, 2014 1:34:54 PM
я что-то пропустил в процессе установки??
или это что то еще??
спасибо мики
1 ответ
У вас проблема с отсутствующим импортом. В документации, на которую вы ссылаетесь, вам также необходимо следующее:
import com.sksamuel.elastic4s.ElasticDsl._
ElasticDsl
Модуль является "точкой входа" для DSL из серии astic4, включая IndexDsl
откуда index
а также into
методы, которые вы используете, взяты из.
Вышеупомянутый импорт необходим в дополнение к тому, который у вас есть, потому что в Scala операторы импорта не являются рекурсивными.