【问题标题】:Reactivemongo QueryOpts.batchSizeN not workReactivemongo QueryOpts.batchSizeN 不起作用
【发布时间】:2014-07-08 07:04:05
【问题描述】:

我使用 play Reactivemongo 插件和 Reactivemongo 一起工作。

def list(ps: Int = pageSize, page: Int = 1, sortBy: String = "_id", order: Int = 1,   filterKey: String = "", filter: String = "") = Action.async { implicit request =>
  val builder = filterKey.length > 0 && filter.length > 0 match {
    case true => collection.find(Json.obj(filterKey -> filter))
    case false => collection.genericQueryBuilder
  }

  val cursor:Cursor[JsObject] = builder
    .sort(Json.obj(sortBy -> order))
    .options(QueryOpts(skipN = (page - 1) * ps, batchSizeN = 10)).cursor[JsObject]

  val futurePersonsList = cursor.collect[List]()

  val futurePersonsJsonArray = futurePersonsList.map { list =>
    Json.arr(list)
  }

  futurePersonsJsonArray.map { list =>
  //Logger.debug(list(0).)
    Ok(list(0)).as(JSON)
 }
}

QueryOptsbatchSizeN,我以为它会退回 10 件物品,但事实并非如此。
最后我将cursor.collect[List]() 更改为cursor.collect[List](10),它可以工作。 我的问题是 batchSizeN 用于 mongodb 命令find().limit() 是否相同?
QueryOpts.batchSizeNcursor.collect[List](10)有什么区别?

【问题讨论】:

    标签: mongodb playframework playframework-2.2 reactivemongo


    【解决方案1】:
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多