postgresql - unde pot specifica migrarea compilată
Folosesc baza de date Postgres cu ORM-ul Sequelize și folosesc TypeScript ca script backend pentru Express în NodeJs.
Prima întrebare: Există o modalitate de a crea un model direct în .ts ?
A doua întrebare: În timp ce încerc să migrez baza de date, primesc acest mesaj:
"Fișier: 20180424170257-create-todo.ts nu corespunde modelului: /.js$/"
Unde pot specifica migrarea compilată?
Mulțumesc.
Răspuns #1
Sequelize nu vine cu propriile definiții de tip, așa că pentru a le adăuga trebuie să le instalezi de la DefinitelyTyped
npm install @types/sequelize
Poți crea un model direct cu acele definiții de tip deja în vigoare. Pentru exemple, poți verifica testele din sequelize.d.ts
Se pare că
interface TaskAttributes {
revision? : number;
name? : string;
}
// For your instance methods
interface TaskInstance extends Sequelize.Instance<TaskAttributes> {
upRevision(): void { ... };
}
const GTask = s.define<TaskInstance, TaskAttributes>( 'task', {
revision : Sequelize.INTEGER,
name : Sequelize.STRING
} );
În ceea ce privește a doua ta întrebare. Umzug folosește fișiere JS simple pentru migrațiile tale, așa că va trebui fie să le compilezi în fișiere JS și apoi să le folosești (într-un pas de compilare, înainte de a rula migrațiile), fie să le scrii direct în JavaScript și nu în TypeScript.
