Параметр маршрута в Nest
Пусть все карточки открываются по одному и тому же пути, и номер конкретной записи в адрес не подставить. Карточки разные, а правило одно, и фреймворк не видит, какую просили.
Параметр маршрута - это кусок пути, который
меняется от запроса к запросу. В адресе его
пишут с двоеточием, а в методе читают
декоратором Param. Имя в пути и имя
в декораторе совпадают, поэтому метод
получает именно тот кусок, который стоял
в адресе.
Значение приходит строкой. Номер не нужно вытаскивать из адреса вручную: метод получает его готовым и может вернуть клиенту. Покажем на примере поста и откроем карточку по номеру:
import { Controller, Get, Param } from '@nestjs/common';
@Controller()
export class PostController {
@Get('posts/:id')
getPost(@Param('id') id: string): string {
return id;
}
}
Метод отдаёт номер, который стоял в адресе. Подключим класс в корневом модуле:
import { Module } from '@nestjs/common';
import { PostController } from './post.controller.js';
@Module({
controllers: [PostController],
})
export class AppModule {}
Сделайте открытие карточки работника
по номеру в адресе в контроллере
WorkerController и подключите его
к корневому модулю.