У меня возникла проблема с запросом на регулярное выражение с синтаксисом жидкого dsl, я пытаюсь сказать что-то вроде ("id" -> foo)
с использованием жидкости. foo - регулярное выражение, поэтому в regex нет элемента $ elemMatch, поэтому я получаю «Неявное представление, доступное из Regex to DBObject».mongodb query regex с синтаксисом жидкости casbah
так, в настоящее время я должен структурировать свой запрос следующим образом:
("someval" $gte 5) ++ ("id" -> foo)
, я должен положить часть Ид на конце, потому что он не собирается через DSL. Что бы я хотел, это что-то вроде
("id" [WHAT OP HERE?] foo.r) ++ ("someval" $gte 5)
Как это сделать? Пожалуйста, обратите внимание, что я знаю, как использовать «обычные» («Foo» -> MongoDbObject (... синтаксис, я хотел бы использовать, чтобы сделать DSL то же самое
Благодаря
Обычный вариант' MongoDBObject (. "id" -> foo.r) ++ ("someval" $ gte 5) ', и я не знать проще, если вы хотите id в начале. –
вы можете создать псевдоним, например 'val $ = MongoDBObject', и использовать его как' $ ("foo" -> "bar" .r) ++ ("someval" $ gte 5) ' –
@SergeyPassichenko i do not понять, почему нет $ eq? я думал, что сначала я не нашел его и искал весь код :), существует $ neq с регулярным выражением, так что не имеет смысла делать $ eq с регулярным выражением? возможно, я не понимаю что-то – Alex