fix(database): migrations table name missing table prefix
This commit is contained in:
		
							parent
							
								
									a26ac4f217
								
							
						
					
					
						commit
						e0646650f0
					
				@ -18,6 +18,10 @@ describe('migrator', () => {
 | 
			
		||||
    await db.close();
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
  test('migrations', async () => {
 | 
			
		||||
    expect(db.getModel('migrations').tableName).toBe('test_migrations');
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
  test('addMigrations', async () => {
 | 
			
		||||
    db.addMigrations({
 | 
			
		||||
      directory: resolve(__dirname, './fixtures/migrations'),
 | 
			
		||||
 | 
			
		||||
@ -62,13 +62,13 @@ import {
 | 
			
		||||
} from './types';
 | 
			
		||||
import { patchSequelizeQueryInterface, snakeCase } from './utils';
 | 
			
		||||
 | 
			
		||||
import DatabaseUtils from './database-utils';
 | 
			
		||||
import { registerBuiltInListeners } from './listeners';
 | 
			
		||||
import { BaseValueParser, registerFieldValueParsers } from './value-parsers';
 | 
			
		||||
import buildQueryInterface from './query-interface/query-interface-builder';
 | 
			
		||||
import QueryInterface from './query-interface/query-interface';
 | 
			
		||||
import { Logger } from '@nocobase/logger';
 | 
			
		||||
import { CollectionGroupManager } from './collection-group-manager';
 | 
			
		||||
import DatabaseUtils from './database-utils';
 | 
			
		||||
import { registerBuiltInListeners } from './listeners';
 | 
			
		||||
import QueryInterface from './query-interface/query-interface';
 | 
			
		||||
import buildQueryInterface from './query-interface/query-interface-builder';
 | 
			
		||||
import { BaseValueParser, registerFieldValueParsers } from './value-parsers';
 | 
			
		||||
import { ViewCollection } from './view-collection';
 | 
			
		||||
 | 
			
		||||
export type MergeOptions = merge.Options;
 | 
			
		||||
@ -275,6 +275,12 @@ export class Database extends EventEmitter implements AsyncEmitter {
 | 
			
		||||
      }),
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    this.sequelize.beforeDefine((model, opts) => {
 | 
			
		||||
      if (this.options.tablePrefix) {
 | 
			
		||||
        opts.tableName = `${this.options.tablePrefix}${opts.tableName || opts.modelName || opts.name.plural}`;
 | 
			
		||||
      }
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    this.collection({
 | 
			
		||||
      name: 'migrations',
 | 
			
		||||
      autoGenId: false,
 | 
			
		||||
@ -284,12 +290,6 @@ export class Database extends EventEmitter implements AsyncEmitter {
 | 
			
		||||
      fields: [{ type: 'string', name: 'name' }],
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    this.sequelize.beforeDefine((model, opts) => {
 | 
			
		||||
      if (this.options.tablePrefix) {
 | 
			
		||||
        opts.tableName = `${this.options.tablePrefix}${opts.tableName || opts.modelName || opts.name.plural}`;
 | 
			
		||||
      }
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    this.initListener();
 | 
			
		||||
    patchSequelizeQueryInterface(this);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
@ -2,6 +2,12 @@ import { Migration } from '@nocobase/server';
 | 
			
		||||
 | 
			
		||||
export default class extends Migration {
 | 
			
		||||
  async up() {
 | 
			
		||||
    const result = await this.app.version.satisfies('<0.9.3-alpha.1');
 | 
			
		||||
 | 
			
		||||
    if (!result) {
 | 
			
		||||
      return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    await this.app.db.getRepository('roles').update({
 | 
			
		||||
      filter: {
 | 
			
		||||
        $or: [{ allowConfigure: true }, { name: 'root' }],
 | 
			
		||||
 | 
			
		||||
@ -3,6 +3,12 @@ import { CollectionsGraph } from '@nocobase/utils';
 | 
			
		||||
 | 
			
		||||
export default class extends Migration {
 | 
			
		||||
  async up() {
 | 
			
		||||
    const result = await this.app.version.satisfies('<0.9.3-alpha.1');
 | 
			
		||||
 | 
			
		||||
    if (!result) {
 | 
			
		||||
      return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (!this.app.db.getCollection('applications')) return;
 | 
			
		||||
 | 
			
		||||
    await this.app.db.getCollection('collections').repository.destroy({
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user