Convert http req to sequelize find object
npm install wc-query-sequelize
import wQueryS from 'wc-query-sequelize'const items = {
type: new GraphQLList(Type),
description: 'get item list',
args: {
limit : { type: IntType},
skip : { type: IntType},
order : { type: StringType},
name : { type: StringType},
},
resolve( request, args, session) {
const options = wQueryS(args);
return Model.findAll(options);
}
``
{items(limit:16, order:'-updatedAt', name:"~test" ){id name}}
``
SELECT * FROM Items WHERE LOWER(name) LIKE '%test%' ORDER BY Items.updatedAt DESC LIMIT 16;
`Comparison Query Operators
$3
- url: /api/item?name=test
+ name: 'test'
$3
- url: /api/item?name=!test
+ name: {$ne:'test'}
$3
- LT <
- LTE [
- GT >
- GTE ]- url: /api/item?name=>test
+ name: {$gt:'test'}
$3
- IN - @
- NIN - #- url: /api/item?name=@1|2|3
+ name: {$in:['1','2','3']}
$3
url: /api/item?name=~test
`
{
"name": {
"attribute": {
"fn": "lower",
"args": [
{
"col": "name"
}
]
},
"comparator": "=",
"logic": {
"$like": "%test%"
}
}
}
``- /api/item?order=name
+ order:['name', 'ASC']
- /api/item?order=-name
+ order:['name', 'DESC']