Add genres crud
This commit is contained in:
parent
dddbf846d4
commit
e6755b39ed
7 changed files with 77 additions and 0 deletions
|
|
@ -4,6 +4,7 @@ import { AppService } from './app.service';
|
|||
import { ConfigModule } from '@nestjs/config';
|
||||
import { MongooseModule } from '@nestjs/mongoose';
|
||||
import { ShowsModule } from './shows/shows.module';
|
||||
import { GenresModule } from './genres/genres.module';
|
||||
import * as Joi from 'joi';
|
||||
|
||||
@Module({
|
||||
|
|
@ -19,6 +20,7 @@ import * as Joi from 'joi';
|
|||
}),
|
||||
MongooseModule.forRoot(process.env.URI),
|
||||
ShowsModule,
|
||||
GenresModule,
|
||||
],
|
||||
controllers: [AppController],
|
||||
providers: [AppService],
|
||||
|
|
|
|||
1
src/genres/dto/genre.dto.ts
Normal file
1
src/genres/dto/genre.dto.ts
Normal file
|
|
@ -0,0 +1 @@
|
|||
export class GenreDto {}
|
||||
1
src/genres/entities/genre.entity.ts
Normal file
1
src/genres/entities/genre.entity.ts
Normal file
|
|
@ -0,0 +1 @@
|
|||
export class Genre {}
|
||||
33
src/genres/genres.controller.ts
Normal file
33
src/genres/genres.controller.ts
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
import { Controller, Get, Post, Body, Patch, Param, Delete } from '@nestjs/common';
|
||||
import { GenresService } from './genres.service';
|
||||
import { GenreDto } from './dto/genre.dto';
|
||||
|
||||
@Controller('genres')
|
||||
export class GenresController {
|
||||
constructor(private readonly genresService: GenresService) {}
|
||||
|
||||
@Post()
|
||||
create(@Body() dto: GenreDto) {
|
||||
return this.genresService.create(dto);
|
||||
}
|
||||
|
||||
@Get()
|
||||
findAll() {
|
||||
return this.genresService.findAll();
|
||||
}
|
||||
|
||||
@Get(':id')
|
||||
findOne(@Param('id') id: string) {
|
||||
return this.genresService.findOne(+id);
|
||||
}
|
||||
|
||||
@Patch(':id')
|
||||
update(@Param('id') id: string, @Body() dto: GenreDto) {
|
||||
return this.genresService.update(+id, dto);
|
||||
}
|
||||
|
||||
@Delete(':id')
|
||||
remove(@Param('id') id: string) {
|
||||
return this.genresService.remove(+id);
|
||||
}
|
||||
}
|
||||
9
src/genres/genres.module.ts
Normal file
9
src/genres/genres.module.ts
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
import { Module } from '@nestjs/common';
|
||||
import { GenresService } from './genres.service';
|
||||
import { GenresController } from './genres.controller';
|
||||
|
||||
@Module({
|
||||
controllers: [GenresController],
|
||||
providers: [GenresService],
|
||||
})
|
||||
export class GenresModule {}
|
||||
25
src/genres/genres.service.ts
Normal file
25
src/genres/genres.service.ts
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
import { Injectable } from '@nestjs/common';
|
||||
import { GenreDto } from './dto/genre.dto';
|
||||
|
||||
@Injectable()
|
||||
export class GenresService {
|
||||
create(dto: GenreDto) {
|
||||
return 'This action adds a new genre';
|
||||
}
|
||||
|
||||
findAll() {
|
||||
return `This action returns all genres`;
|
||||
}
|
||||
|
||||
findOne(id: number) {
|
||||
return `This action returns a #${id} genre`;
|
||||
}
|
||||
|
||||
update(id: number, dto: GenreDto) {
|
||||
return `This action updates a #${id} genre`;
|
||||
}
|
||||
|
||||
remove(id: number) {
|
||||
return `This action removes a #${id} genre`;
|
||||
}
|
||||
}
|
||||
6
src/genres/schema/genres.schema.ts
Normal file
6
src/genres/schema/genres.schema.ts
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
import { Schema } from 'mongoose';
|
||||
|
||||
export const GenreSchema = new Schema({
|
||||
name: { type: String, required: true },
|
||||
showsIDs: [{ type: Schema.Types.ObjectId, ref: 'Show' }],
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue