Controller - Example
Войти

Controller - Example

Controller - Example

Методы контроллера

  1. Получаем все записи
    1
    2
    3
    4
    @Get()
    getAll() {
      return 'Все записи';
    }
  2. Поиск

    Чтобы функция поиск работала нормально, ее необходимо размещать перед получнием по id
    1
    2
    3
    4
    @Get('search')
    search(@Query('name') name: string) {
      return `Поиск фильм c названием \"${name}\"`;
    }
  3. Получаем одну запись
    Для передачи id (параметров пути) в обработчик, мы используем декоратор @Param
    1
    2
    3
    4
    @Get(':id')
    getOne(@Param('id') id: string){
      return `Один фильм c № ${id}`;
    }
  4. Создание фильма
    1
    2
    3
    4
    @Post()
    create(@Body() data: any) {
      return data;
    }
  5. Удаление фильма
    1
    2
    3
    4
    @Delete(':id')
    remove(@Param('id') id: string) {
      return `Удаление фильма № ${id}`;
    }
  6. Частичное обновление
    1
    2
    3
    4
    5
    6
    7
    8
    @Patch(':id')
    update(@Param('id') moveId: string, @Body() data: any) {
      return {
        info: 'Редактирование фильма',
        id: moveId,
        ...data,
      };
    }


Пример

movies.controller
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import {
  Body,
  Controller,
  Delete,
  Get,
  Param,
  Patch,
  Post,
  Query,
} from '@nestjs/common';

@Controller('movies')
export class MoviesController {
  @Get()
  getAll() {
    return 'Все записи';
  }

  @Get('search')
  search(@Query('name') name: string) {
    return `Поиск фильм c названием \"${name}\"`;
  }

  @Get(':id')
  getOne(@Param('id') id: string) {
    return `Один фильм c № ${id}`;
  }

  @Post()
  create(@Body() data: any) {
    return data;
  }

  @Delete(':id')
  remove(@Param('id') id: string) {
    return `Удаление фильма № ${id}`;
  }

  @Patch(':id')
  update(@Param('id') moveId: string, @Body() data: any) {
    return {
      info: 'Редактирование фильма',
      id: moveId,
      data,
    };
  }
}
Теги:
php