#7: Разрабатываем клон TJournal: Создаем CRUD записей и комментариев + class-validator [backend]

preview_player
Показать описание
В этом уроке:
1. Создаём функционал записей и комментариев
2. Подключаем валидацию с помощью class-validator

Исходники вёрстки и самого проекта на Patreon'е.

❤️ Поддержка:

🛠 Стэк технологий будет следующий:

Frontend:
- NextJS / React
- TypeScript
- Redux / Redux Saga
- EditorJS
- React Hook Form / Yup
- Material UI
- SCSS / CSS-modules

Backend:
- NestJS
- TypeScript
- PostgreSQL
- JWT / PassportJS

🔗 Следите за обновлениями и информацией в:
Рекомендации по теме
Комментарии
Автор

Решение проблемы с валидацией на 11:45 - нужно создать свою кастомную ValidationPipe.
Пример:

1. Создаем кастомный ValidationPipe.
import { plainToClass } from 'class-transformer';
import { validate } from 'class-validator';

@Injectable()
export class ValidationPipe implements PipeTransform<any> {
async transform(value: any, metadata: ArgumentMetadata): Promise<any> {
if (metadata.type === 'body') {
const obj = plainToClass(metadata.metatype, value);
const errors = await validate(obj);

if (errors.length) {
const messages = errors.reduce((acc, err) => {
acc[err.property] =
return acc;
}, {});
throw new HttpException({
statusCode: HttpStatus.BAD_REQUEST,
message: 'Validation error',
errors: messages,
}, HttpStatus.BAD_REQUEST);
}
}
return value;
}
}

2. В файле main.ts меняем
на
import { ValidationPipe } from '*путь к кастомной ValidationPipe*';

jenyakolesnyk
Автор

Спасибо большое за уроки! Сейчас делаю проект и твои уроки мне очень помогают! Да и смотреть тебя просто одно удовольствие

yamumuyolobro
Автор

Отличное видео, спасибо что выпускаешь этот курс. Только вроде забыл для post сделать связь с user (может быть я сам забыл). Жду 8 часть!

privat_word
Автор

Очень круто, спасибо, жду следующий видос ;)

tatsuki
Автор

Очень четко. Этот контент достоин большего внимания!

xbzonnn
Автор

и все таки такая большая популярность сникерсов, это открытая верстка и ее разработка, для всех

sasa
Автор

На твоём канале очень не хватает UI Testing очень жду в твоем исполнении !

oleksandrharkusha
Автор

Дэннис, хотел попросить у тебя совета по поводу того, с чего и как начинать изучение SQL и СУБД к нему? И с какой СУБД лучше начинать. Заранее спасибо!

sizzzer
Автор

update и так оповестил о том что ничего не изменил, если внимательнее смотреть то он возвращает affected (количество затронутых записей)

luci.morningstar
Автор

Смотрел раньше для ознакомления, сейчас когда пришел к nest js, застрял на комментах(хочу сделать ответы друг на друга) и почему то в памяти отпечаталось, что ты писал их 😞

winged_channel
Автор

Введите имя: Ян ( имя должно быть не меньше 3 символов ) 😫😫😫

kitmeru
Автор

Подскажите пожалуйста, как называется программа для просмотра базы данных, которую использует Дэннис

sergeivenukov
Автор

Бро нужна помощи не оставь в беде, изучаю recat, и надо было сделать slider, сделал через slick-slider, все нормально, но есть точки они стилизуются, кроме display, :flex, что делать, там не может перебить стили, уже все перепробовал

strelok
Автор

как раз сервис не должен возвращать или выкидывать ошибку, сервис это бизнес логика. Сервис должен контроллеру вернуть результат выполнения какой-либо логики, а у же контролер выкидывать ошибку или результат. И дальше эту ошибку обрабатывать.

luci.morningstar
Автор

А можна ссылку не репозиторий проекта что в видео?

mishakrasnonos