Порядок маршрутов в Nest
Пусть рядом живут постоянный адрес и адрес с номером. Запрос постоянной страницы открывает не её, а карточку, где вместо номера стоит слово этого адреса. Постоянная страница пропадает.
Параметр забирает любой кусок пути, в том числе слово, которое задумано как отдельная страница. Постоянный адрес пишут в коде выше параметра. Тогда фреймворк сначала проверяет точное слово и только потом подставляет остаток в номер.
Покажем на примере свежего поста. Поставим его выше номера, чтобы слово не ушло в карточку:
import { Controller, Get, Param } from '@nestjs/common';
@Controller()
export class PostController {
@Get('posts/latest')
getLatest(): string {
return 'Latest post';
}
@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 и подключите его
к корневому модулю.