Ver no GitHub
 (1 comment) (0 reactions) (0 assignees)JavaScript (1.268 forks)batch import
Help Wantedenhancementmajor

Métricas do repositório

Stars
 (6.134 stars)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

To control api we are use:

Comparison Query Operators

EQ

  • url: /api/item?name=test
    • name: 'test'
  • url: /api/item?name.second=test
    • "name.second": 'test'

NEQ

  • url: /api/item?name=!test
    • name: $ne: 'test'

GT

  • url: /api/item?name=>1
    • name: $gt: 1

GTE

  • url: /api/item?name=]1
    • name: $gte: 1

LT

  • url: /api/item?name=<1
    • name: $lt: 1

LTE

  • url: /api/item?name=[1
    • name: $lte: 1

IN

  • url: /api/item?name=@1|2|3
    • name: $in: ['1','2','3']

NIN

  • url: /api/item?name=#1|2|3
    • name: $nin: ['1','2','3']

Evaluation Query Operators

REGEX

  • url: /api/item?name=~test
    • name: $regex: 'test'

Sort

  • /api/item?order=name
  • /api/item?order=-name

Limit

  • /api/item?limit=25&skip=0

We make simple module to convert resp.query to "mongose model find"

https://github.com/alexsuslov/wcQuery

Simple use in server api controller:

"use strict"

_ = require("lodash")
Item = require("./item.model")
Query = require("wc-query")
fields = {}

# Get list of items
exports.index = (req, res) ->
  query = Query(req.query)
  Item.find query.conditions, fields, query.options, (err, items) ->
    throw err if err
    return handleError(res, err)  if err
    res.json 200, items

BRGD Alex

Guia do colaborador