npm.io
4.1.1 • Published 3 years ago

express-crud-router-sequelize-v6-adapter

Licence
MIT
Version
4.1.1
Deps
0
Size
17 kB
Vulns
0
Weekly
0
Stars
1

express-crud-router-sequelize-v6-connector

Sequelize v6 connector to express-crud-router.

import crud from "express-crud-router";
import sequelizeV6Crud from "express-crud-router-sequelize-v6-connector";

app.use(crud("/admin/users", sequelizeV6Crud(User)));

Install

npm install express-crud-router-sequelize-v6-router

express-crud-router-sequelize-v6-router exposes a default search helper function sequelizeSearchFields.

Here is an example:

import crud from "express-crud-router";
import sequelizeCrud, {
  sequelizeSearchFields,
} from "express-crud-router-sequelize-v6-connector";

crud("/admin/users", {
  ...sequelizeCrud(User),
  search: sequelizeSearchFields(User, ["address", "zipCode", "city"]),
});

When searching some stuff, the following records will be returned in this order:

  1. records with a searchable field that contains some stuff
  2. records that have searchable fields that contain both some and stuff
  3. records that have searchable fields that contain one of some or stuff

The search is case insensitive by default (except for search fields of type DataTypes.UUID where exact matches are returned). You can customize the search to make it case sensitive or use a scope:

import { Op } from "sequelize";

const search = sequelizeSearchFields(
  User,
  ["address", "zipCode", "city"],
  Op.like
);

Contribute

See https://github.com/lalalilo/express-crud-router#contribute

Keywords