我有一套数据库管理任务需要在其他一些rake任务之后运行。所以,我读了Ruby Mongo driver source和一些博客文章和我结束了这段代码:如何从我发送给Mongo的脚本中返回值?
scr = open("./scripts/update_stats.js", &:read)
db = Mongoid::Config::master
result = db.command({:$eval => scr})
logger.debug result
logger.warn "Finished updating stats"
在脚本我有几个功能,并在最后一个一个:
r = update_stats();
print("update result:");
print (r);
好了,所以它的所有当我通过命令行直接运行时运行良好。好吧,它似乎是。但我想把结果值存入我的日志中。我可以将该值存储到数据库中,然后将其拔出。似乎应该有更好的方法。我做得到它我的日志是:
DEBUG 2012-01-03 22:27:03 -0800 (21392) {"retval"=>nil, "ok"=>1.0}
并没有告诉我不是,它没有炸毁多等。那么,我怎样才能得到update_stats
的返回值并将其记录在我的Ruby代码中?
你的update_stats.js怎么样? – Nat 2012-01-04 07:32:59
@覆盖约130行迭代一组记录,进行一些计算然后更新记录;包含在我的OP中有点太大了。你正在寻找什么具体的东西? – jcollum 2012-01-04 15:10:33