rethinkdb - 让 RethinkDB 查询在 Ruby on Rails 中工作
问题描述
我有一个 ReQL 查询...
r.db('development').table('responses').filter({
survey_id: 9
}).concatMap(r.row.getField('numerical_answers')).filter({
type: 'CustomerEffortAnswer'
}).sum('number')
...我想在NoBrainer中工作,因为我似乎无法让它在 Ruby on Rails 上工作。当我尝试像这样在 Rails 中运行 ReQL 时......
NoBrainer.run do |r|
return_count = r.db('development').table('responses').filter({ survey_id: id }).concatMap(r.row.getField('numerical_answers')).filter({type: 'CustomerEffortAnswer'}).sum('number')
end
...我得到错误:
Sorry, r.row is not available in the ruby driver. Use blocks instead.
解决方案
需要将代码转换为 Ruby 语言:
return_count = NoBrainer.run do |r|
r.db('development').table('responses')
.filter({:survey_id => 9})
.concat_map { |doc| doc[:numerical_answers] }
.filter({:type => 'CustomerEffortAnswer'})
.sum('number')
end
推荐阅读
- elixir - **(混合)无法编译依赖项:epipe,
- algorithm - 解决具有主题约束的社交高尔夫球手问题?
- python - 在 Apache Beam 和 Google Dataflow 中使用全局变量
- javascript - 如何在javascript中接受整数输入?
- reactjs - 将文本字段添加为数组状态
- c# - 在 C# GUI 中读取 Pcap 文件
- scala - Scala 中的表达式简化器
- docker - docker - 我可以设置一个容器直接通过网络上的 ssh 访问吗?
- asp.net - “远程”属性不起作用(ASP.net MVC)
- c# - 如何模拟使用 Moq 对此 C# 代码进行的以下 DBContext 调用?