gpt4 book ai didi

node.js - TypeORM:从订阅者中排除种子

转载 作者:行者123 更新时间:2023-12-03 22:23:21 26 4
gpt4 key购买 nike

我目前正在使用 TypeORM 库,但我遇到了种子和订阅者的问题
问题是每次我为用户运行种子时,我的订阅者都会被触发并记录新的插入
如何排除来自种子的插入,并仅记录通过 App UI 预制的插入

import { EntitySubscriberInterface, EventSubscriber, InsertEvent, UpdateEvent } from 'typeorm';
import { User } from '../users/user.entity';


@EventSubscriber()
export class HistorySubscriber implements EntitySubscriberInterface<User> {
/**
* Indicates that this subscriber only listen to User events.
*/
listenTo() {
return User;
}

/**
* Called before User insertion.
*/
// eslint-disable-next-line no-unused-vars
async afterInsert(event: InsertEvent<User>) {
// this gets called multiple times even with seed
}



}

最佳答案

对于每个数据库操作(查询),可以指定是否应调用监听器:参见 SaveOptionsQueryBuilder 。因此,对于您的种子,请为每个数据库操作禁用监听器/订阅器。

关于node.js - TypeORM:从订阅者中排除种子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59747965/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com