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 { ConfigModule } from '@nestjs/config';
|
||||||
import { MongooseModule } from '@nestjs/mongoose';
|
import { MongooseModule } from '@nestjs/mongoose';
|
||||||
import { ShowsModule } from './shows/shows.module';
|
import { ShowsModule } from './shows/shows.module';
|
||||||
|
import { GenresModule } from './genres/genres.module';
|
||||||
import * as Joi from 'joi';
|
import * as Joi from 'joi';
|
||||||
|
|
||||||
@Module({
|
@Module({
|
||||||
|
|
@ -19,6 +20,7 @@ import * as Joi from 'joi';
|
||||||
}),
|
}),
|
||||||
MongooseModule.forRoot(process.env.URI),
|
MongooseModule.forRoot(process.env.URI),
|
||||||
ShowsModule,
|
ShowsModule,
|
||||||
|
GenresModule,
|
||||||
],
|
],
|
||||||
controllers: [AppController],
|
controllers: [AppController],
|
||||||
providers: [AppService],
|
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