tachybase_todo/docs/tr-TR/development/server/migration.md

51 lines
1.2 KiB
Markdown
Raw Normal View History

# Database Migration
There may be some incompatible changes during the plugin update iteration, these incompatible upgrade scripts can be handled by writing migration files.
## How to add a migration file?
```ts
export class MyPlugin extends Plugin {
load() {
// Load a single Migration file
this.db.addMigration();
// Load multiple Migration files
this.db.addMigrations();
}
}
```
API reference.
- [db.addMigration()](/api/database#addmigration)
- [db.addMigrations()](/api/database#addmigrations)
## When to execute?
```bash
## When the app is upgraded, migrator.up() and db.sync() are executed
yarn nocobase upgrade
# Trigger migration separately
yarn nocobase migrator up
```
## When do I need to write a migration file?
It is usually used to update the system configuration stored in the database during the upgrade process. If it is just a collection configuration change, you don't need to configure migration, just execute ``yarn nocobase db:sync`` to synchronize to the database.
## Migration file
```ts
import { Migration } from '@nocobase/server';
export default class CustomMigration extends Migration {
async up() {
//
}
async down() {
//
}
}
```