0.3.9 • Published 2 years ago

sequelize-db-type v0.3.9

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

PRs-Welcome NPM version Downloads

Table of contents

  • What is Sequelize DB Type?
  • Getting Started
  • Contributors

"Sequelize DB Type" is a model typedefinitions for the people who use TypeScript as their language when developing backend with Sequelize ORM.

Keep in mind that the generated file is can be edited. Just keep in mind the generated file will be overwritten every time you run a sequelize migration.

  1. To get started with sequelize-db-type, run any of the following commands:

npm

npm i -D sequelize-db-type@latest
  1. Add your model/migration/seeder folder path to your package.json in sequelize-db-type
# Rest of your `package.json`
+ "sequelize-db-type": {
+  "models": "your-model-folder-path",
+  "migrations": "your-migration-folder-path",
+  "seeders": "your-seeder-folder-path",
+ }
}
  1. Add a prepare scripts in your package.json
  "scripts":{
+   "prepare": "patch-package",
  }
  1. Run the prepare scripts to patch sequelize-cli so it will run sequelize-db-type automatically
# With NPM
yarn run prepare

# With Yarn
yarn run prepare
  1. Run a sequelize migrations
# With NPM
npx sequelize-cli db:migrate

# With Yarn
yarn sequelize-cli db:migrate
  1. Add sequelize-db-type in your models/index.ts
# Import `sequelize-db-type`
+ import { Database } from 'sequelize-db-type/helper';

# Change db from an object to Database
- let db = {}
+ const db: Database = {} as Database;
  1. Add sequelize-db-type in all of your model in models folder
# Import `sequelize-db-type`
+ import { Database } from 'sequelize-db-type/helper';

# Change `static associate` parameter type
- static associate(models) {
-   define association here
- }
+ static associate(models: Database) {
+   define association here
+ }
  1. Use generated models in your code (e.g. index.ts)
// Import the models from 'models' folder
import db from './models';

db.sequelize.drop(); // Should have a type definition now

// Should have a type definition with the correct paramter to pass through
db.users.create({
  ...payload,
});

We 💖 contributors! Feel free to contribute to this project but please read the Contributing Guidelines before opening an issue or PR so you understand the branching strategy and local development environment.

0.3.9

2 years ago

0.3.8

2 years ago

0.3.7

2 years ago

0.3.6

2 years ago

0.3.5

2 years ago

0.3.3

2 years ago

0.3.2

2 years ago

0.3.0

2 years ago

0.2.6

2 years ago

0.2.5

2 years ago

0.1.0

2 years ago