Yeoman
Introduction
Yeoman is a generic scaffolding system allowing the creation of any kind of app. It allows for rapidly getting started on new projects and streamlines the maintenance of existing projects.
Templates
Create template
yo generatorCustomize the template and declare the output format
import {
Body,
Controller,
Delete,
Get,
Param,
Patch,
Post,
Query,
} from "@nestjs/common";
import { ApiBearerAuth } from "@nestjs/swagger";
import { PageQueryDto } from "@/common/page-query.dto";
import { ApiPageResponse } from "@/common/page-response.decorator";
import { <%= entityUpper %> } from "@/<%= entityLower %>/entities/<%= entityLower %>.entity";
import { Create<%= entityUpper %>Dto } from "./dto/create-<%= entityLower %>.dto";
import { Update<%= entityUpper %>Dto } from "./dto/update-<%= entityLower %>.dto";
import { <%= entityUpper %>Service } from "./<%= entityLower %>.service";
@Controller("<%= entityPlural %>")
@ApiBearerAuth("JWT")
export class <%= entityUpper %>Controller {
constructor(private readonly <%= entityLower %>Service: <%= entityUpper %>Service) {}
@Post()
create(@Body() create<%= entityUpper %>Dto: Create<%= entityUpper %>Dto): Promise<<%= entityUpper %> | null> {
return this.<%= entityLower %>Service.create(create<%= entityUpper %>Dto);
}
@Get()
@ApiPageResponse(<%= entityUpper %>)
findMany(@Query() pageQueryDto: PageQueryDto) {
return this.<%= entityLower %>Service.findAndCount({}, pageQueryDto);
}
@Get(":id")
findOne(@Param("id") id: string): Promise<<%= entityUpper %> | null> {
return this.<%= entityLower %>Service.findById(id);
}
@Patch(":id")
update(@Param("id") id: string, @Body() update<%= entityUpper %>Dto: Update<%= entityUpper %>Dto) {
return this.<%= entityLower %>Service.update(id, update<%= entityUpper %>Dto);
}
@Delete(":id")
remove(@Param("id") id: string) {
return this.<%= entityLower %>Service.delete(id);
}
}Generate the file
Reference
Last updated
Was this helpful?