joi는 데이터 유효성 검사 툴이다.
npm i joi
javascript로 되어있는 패키지를 import 할 때는 아래와 같이 작성한다.
import * as Joi from 'joi';
import { Module } from '@nestjs/common';
import * as Joi from 'joi';
import { ConfigModule } from '@nestjs/config';
import { GraphQLModule } from '@nestjs/graphql';
import { TypeOrmModule } from '@nestjs/typeorm';
import { RestaurantsModule } from './restaurants/restaurants.module';
@Module({
imports: [
GraphQLModule.forRoot({
autoSchemaFile: true,
}),
RestaurantsModule,
ConfigModule.forRoot({
isGlobal: true,
envFilePath: process.env.NODE_ENV === "dev" ? ".env.dev" : ".env.test",
ignoreEnvFile: process.env.NODE_ENV === "prod",
validationSchema: Joi.object({
NODE_ENV: Joi.string()
.valid('dev', 'prod')
.required(),
DB_HOST: Joi.string().required(),
DB_PORT: Joi.string().required(),
DB_USERNAME: Joi.string().required(),
DB_PASSWORD: Joi.string().required(),
DB_NAME: Joi.string().required()
}),
}),
TypeOrmModule.forRoot({
type: "postgres",
host: process.env.DB_HOST,
port: +process.env.DB_PORT,
username: process.env.DB_USERNAME,
password: process.env.DB_PASSWORD,
database: process.env.DB_NAME,
synchronize: true,
logging: true
// }).then(connection => {
// here you can start to work with your entities
// }).catch(error => console.log(error));
})
],
controllers: [],
providers: [],
})
export class AppModule {}
'Uber Eats' 카테고리의 다른 글
Uber Eats # 11 Repository (0) | 2021.03.07 |
---|---|
Uber Eats # 10 TYPEORM and Nest, Active Record vs Data Mapper (0) | 2021.03.07 |
Uber Eats # 8 dotenv (0) | 2021.03.06 |
Uber Eats # 7 TYPEORM (0) | 2021.03.06 |
Uber Eats # 6 validator (0) | 2021.03.06 |