Почему Contains in .Filter(func()) не работает в gorethink, а части запроса игнорируются?
Я пытаюсь сделать это:
r.table(table).filter(
function (doc) {
return r.expr(array)
.contains(doc("name"));
}
)
написано на Голанге это
rethink.Table(table).GetAllByIndex(index, value).Filter(func(row rethink.Term) interface {}{
return rethink.Expr([]string{}).Contains(row.Field("type"))
})
Я не уверен, но это похоже на переосмысление.Expr игнорируется. Это первая проблема.
Вторая проблема следующая. Если у меня есть запрос, написанный следующим образом:
query := rethink.Table(table).GetAllByIndex(index, value)
а затем попробуйте сделать следующее:
if some_condition {
q.Filter(some_filter)
}
if some_other_condition {
q.Filter(some_other_filter)
}
когда я распечатаю q.String()
я получил только эту первую часть, а все остальное игнорируется rethink.Table(table).GetAllByIndex(index, value)