I'm trying to use sequelize with typescript, but don't know how. I installed a package named sequelize-cli-typescript, but it does not work with sequelize v6. And I know it is better to use migrations to perform my database. How can I do that?
Using sequelize cli with typescript
Asked Answered
sequelize.org/master/manual/typescript.html? –
Inflationism
Wanna use migrations, not sync –
Hydrastis
This question leaves us to ask so many other questions we don't know where to start to help. –
Inflationism
OK I just want to create my migrations with sequelize-cli, and output a ts file instead of js file. That's it, I don't wanna add models manually and then sync them. I just want to add models using migrations. sequelize-cli package is for js, not for ts. It generates js file,not ts. –
Hydrastis
You pretty much need to transpile your code into javascript if you're going to use migrations, because sequelize-cli doesn't know anything about typescript. We compile our stuff to ./dist
right before running npx sequelize-cli db:migrate
via npx tsc -p .
with a tsconfig.json
file that has these lines:
{
"compilerOptions": {
"target": "es6",
// ...
"outDir": "dist",
// ...
}
}
The .sequelizerc
file (which is used by sequelize-cli only) will also point to dist, e.g.:
const path = require('path');
module.exports = {
'config': path.resolve('./dist/src/config', 'config.js'),
'models-path': path.resolve('./dist/src/db', 'models'),
'seeders-path': path.resolve('./dist/src/db', 'seeders'),
'migrations-path': path.resolve('./dist/src/db', 'migrations')
}
gives me this Error: Cannot find module 'babel-plugin-module-resolver' #74231628 –
Uveitis
© 2022 - 2024 — McMap. All rights reserved.