MikroORM
本章节介绍用户如何在 midway 中使用 MikroORM。 MikroORM 是基于数据映射器、工作单元和身份映射模式的 Node.js 的 TypeScript ORM。
MikroORM 的官网文档在 这里。
相关信息:
| 描述 | |
|---|---|
| 可用于标准项目 | ✅ |
| 可用于 Serverless | ✅ |
| 可用于一体化 | ✅ |
| 包含独立主框架 | ❌ |
| 包含独立日志 | ❌ |
关于升级
- 从
v3.14.0版本的组件开始,支持 mikro v5/v6 版本,由于 mikro v5 到 v6 有较大的变化,如从 mikro 老版本升级请提前阅读 Upgrading from v5 to v6 - 组件示例已更新为 v6 版本
安装组件
安装 mikro 组件,提供接入 mikro-orm 的能力。
$ npm i @midwayjs/mikro@3 @mikro-orm/core --save
或者在 package.json 中增加如下依赖后,重新安装。
{
"dependencies": {
"@midwayjs/mikro": "^3.0.0",
"@mikro-orm/core": "^6.0.2",
// ...
},
"devDependencies": {
// ...
}
}
同时,还需要引入对应数据库的适配包。
比如:
{
"dependencies": {
// sqlite
"@mikro-orm/sqlite": "^6.0.2",
// mysql
"@mikro-orm/mysql": "^6.0.2",
},
"devDependencies": {
// ...
}
}
更多驱动程序请查看 官方文档。
引入组件
在 src/configuration.ts 引入 mikro 组件,示例如下。
// configuration.ts
import { Configuration } from '@midwayjs/core';
import * as mikro from '@midwayjs/mikro';
import { join } from 'path';
@Configuration({
imports: [
// ...
mikro // 加载 mikro 组件
],
importConfigs: [
join(__dirname, './config')
]
})
export class MainConfiguration {
}
基础使用
和其他 orm 框架类似,都是分为几个步骤:
- 1、定义 Entity
- 2、配置数据源
- 3、获取 EntityModel 进行调用
下面的更多 Entity 代码请查看 示例。