TypeORM - 创建简单项目



本章介绍如何创建一个简单的 TypeORM 应用程序。让我们创建一个名为“TypeORM”的新目录,并进入该目录。

cd /path/to/TypeORM/

语法

使用以下命令创建新项目:

typeorm init --name <project-name> --database <database-name>

示例

typeorm init --name FirstProject --database mysql

这里,

FirstProject 是您的项目名称,sqlite3 是数据库名称。执行上述命令后,您将看到以下响应:

Project created inside /path/to/TypeORM/FirstProject directory

现在,进入我们的项目目录,并使用npm模块安装项目依赖项:

$ cd FirstProject 

$ npm install

项目结构

让我们了解一下我们新创建的项目FirstProject的项目结构。

FirstProject 
├──> src 
 ├──> entity 
  └──> User.ts 
 ├──> migration 
 └──> index.ts 
├──> node_modules 
├──> ormconfig.json 
├──> package.json 
├──> package-lock.json 
└──> tsconfig.json

这里,

  • src - 包含应用程序的源代码,使用TypeScript语言。它包含一个文件index.ts和两个子目录entitymigration
  • index.ts - 应用程序的入口点。
  • entity - 包含数据库模型。
  • migration - 包含数据库迁移代码。
  • node_modules - 本地保存的 npm 模块。
  • ormconfig.json - 应用程序的主要配置文件。它包含数据库配置详细信息和实体配置。
  • package.json - 包含节点模块依赖项。
  • package-lock.json - 自动生成的文件,与package.json相关。
  • tsconfig.json - 包含 TypeScript 特定的编译器选项。

ormconfig.json 文件

让我们检查一下应用程序可用的配置选项。打开 ormconfig.json 文件,它看起来类似于:

{ 
   "type": "mysql", 
   "host": "localhost", 
   "port": 3306, 
   "username": "test", 
   "password": "test", 
   "database": "test", 
   "synchronize": true, 
   "logging": false, 
   "entities": [ 
      "src/entity/**/*.ts" ], 
   "migrations": [ "src/migration/**/*.ts" 
   ], 
   "subscribers": [ "src/subscriber/**/*.ts" 
   ], 
   "cli": { 
      "entitiesDir":"src/entity", "migrationsDir":"src/migration", "subscribersDir":"src/subscriber
   }    
 }

这里,

typehostusernamepassworddatabase 和 port 选项与数据库设置相关。mysql 可以使用以下配置进行配置:

{ 
   "type": "mysql", 
   "host": "localhost", 
   "port": 3306, 
   "username": "db_username", "password": "db_password", "database": "db_name" 
}
  • entities - 指向实体类的路径。
  • migrations - 指向迁移类的路径。
  • subscribers - 指向订阅者类的路径。
  • cli - 指向TypeORM CLI用来自动生成代码的选项。

启动 MySql 服务器

在启动应用程序之前,启动您的MySQL服务器或任何您使用的数据库服务器,并确保其正常运行。

运行应用程序

配置完成后,我们可以使用以下命令执行应用程序:

npm start

您将看到以下响应:

> FirstProject@0.0.1 start /Users/../../TypeORM/FirstProject 

> ts-node src/index.ts 

Inserting a new user into the database... Saved a new user with id: 1 Loading users from the database... Loaded users: [ User { id: 1, firstName: 'Timber', lastName: 'Saw', age: 25 }] 

Here you can setup and run express/koa/any other framework.

应用程序将新用户插入数据库,然后从数据库反向加载它,最后在控制台中显示加载的用户。我们已成功创建了一个新的TypeORM应用程序,对其进行了配置并运行了该应用程序。

我们将在后续章节中详细讨论数据是如何执行的。

广告