koishi-plugin-typeorm v3.5.2
koishi-plugin-typeorm
如果不喜欢 Koishi 的数据库设计的话,来用这个也是一个选择。
本插件提供了 TypeORM 的服务,可以用 ctx.typeorm 进行访问。
本插件不是 Koishi 数据库支持。
安装
npm install koishi-plugin-typeorm使用
配置
详见 TypeORM 连接参数 。
只需要配置 type 以及 host port usertoken password 等连接参数即可。 entities 不在此处进行配置。
使用
每一个 Koishi 插件可以使用本插件提供的服务,使用 create 方法创建数据库连接,并在插件中使用。
每个连接的实体是独立的,不可以跨数据库连接建立关系。
示例
export const using = ['typeorm']
export function apply(ctx: Context, config: any) {
ctx.on('ready', async () => {
await ctx.typeorm.create('myplugin', [MyEntity]);
});
ctx.command('foo')
.action(async(argv, id) => {
const repo = ctx.typeorm.getRepository(MyEntity);
const data = await repo.fineOne(id);
});
}API
create(token: string, entities: TypeORMEntity[], extraOptions?: ConnectionOptions): Promise<Connection>注册一个数据库连接。token数据库连接名称。entities数据库实体。extraOptions额外的连接参数。
该方法同时会在插件关闭时自动关闭数据库连接。
getConnection(token: string): Connection获取一个数据库连接。getEntityManager(token: string): EntityManager获取一个实体管理器。getRepository<T>(entity: TypeORMEntity<T>): Repository<T>获取一个数据库实体的仓库。close(token: string): Promise<void>关闭一个数据库连接。
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago