#3 Создание блога. MySql, Typeorm миграции. NestJS. Джедай Web Разработки

preview_player
Показать описание
Снимал 3 раза, но не смог выкинуть лишнего. Вся инфа в видео важна, смотрите до конца! :)
В видео настроил typeorm mysql для работы в nestjs
Удалось настроить typeorm migrations, что позволяет использовать специальные файлы для наполнения базы данных, например создать первого пользователя или наполнить конфигурациями.

В видео столкнулся с рядом трудностей, надеюсь на своих подписчиков, что в комментраиях помогут найти правильное решение

Для выполнения проекта я создал github issue и доблестно ее решил и закрыл :)
----------------------------------------------------------------------------------------

Приветствую друзья. Этот плейлист посвящен разработке блога с использованием Nest Js + Angular + MySql. Все это будет происходить с использованием KANBAN подходов к ведению проектов и с использованием github.

Видео максимально содержат все шаги разработки и мысли по реализации.

Цель такого формата - донести свое мировозрение к разработке длительных проектов и привлечь увлеченных ребят делать pull request в мой github репозиторий как contributors.

Невозможно рассказать причины появления шаблонов программирования, если не иметь проект состоящий из большого числа зависящих друг от друга элементов.

Надеюсь такой формат видео будет интересен. Github проекты можно найти:

Телеграм канал:

Спонсорство:

Ключевые слова:
джедай web разработки
джедай веб разработки
джедай разработки
Рекомендации по теме
Комментарии
Автор

Боже, нету нормальных ормок кроме как призмы. Кто придумывал создание этих миграций в тайпорм и том же сиквалайз? Какого хрена нельзя просто написать что-то типа migration:generate и migration:run. Нахрена делать костыли постоянно? 5 лет уже несту и не могли что-то придумать. Какой же кал. Надеюсь всю эту дичь на призму поменяют и забудут. А потом думаешь: а почему нода не так популярна в беке? Так бо такую херь придумывают. Блять почему надо мудрить ебень, чтобы эти миграции создать? Почему я не могу нормально датасорс в провайдере в юсФектори закинуть и там с миграциями работать? Поэтому конечно заказчик возьмет дотнет например. Где тупо есть отдельный класс для базы данных, куда ты кидаешь все модели и этот файл должен быть на самом верхнем уровне и всеее!!! Пишешь Add-Migration TestMigrationName и Update-Database. Всеее... никаких костылей. Все-таки джс сообщество еще долго будет к этому доходить, ума нету создавать действительно хорошие вещи, которые будут без костылей работать. Пока что только нест и призму придумали. Жаль что это еще не популярно, говноеды до сих пор пользуются экспресом и калом как тайпорм и сиквалайз. Из-за таких овощей бекенд нода будет прогрессировать десятилетиями если тогда про нее не забудут адекватные разрабы, а не мазохисты. Одна надежда на нест и призму

shmeklz
Автор

Привет всем 😀
Первичная настройка окружения забирает много времени и выглядит так, что ничего не сделано, однако это не так 😆
Правильно заложенная архитектура на старте, позволит экономить много времени в процессе разработки.
Пытался сделать урок коротким, записывал 3 раза, в итоге это самая длинная версия и самая содержательная 😱
Желаю приятного просмотра и набираться мудрости на чужих ошибках 😅

grommaks
Автор

у твоего друга все правильно написано в коде, зачем искать
{.ts, .js} - зачем искать .ts файлы, если мы ищем их в dist дирректории? их там не должно быть

dementordev
Автор

У меня оно не работало, пока я не сделал typeorm init. Нужно вызывать эту команду при создании проекта, она создаёт ormconfig.json сама

romanryaboshtan
Автор

Хороший урок но может кто подскажет делаю миграцию по шагам, у меня требует "Missing required argument: dataSource" о котором вроде как ничего в уроке не сказано. Не до конца понятен еще момент с файлом ormconfig.ts, он должен куда то подключаться или его подхватывает typeorm?

AlexUrsulov
Автор

Если я например знаю диалект MySQL, то смогу работать с MongoDB ? или там другие операторы?

programer
Автор

Мужик, ты конечно классный, но пустой сгенерированный файл миграции зачем нам нужен ? Вся суть то в том чтобы заставить typeorm сделать это за нас. И руками не писать криво-косо миграции. У меня на работе это работало(видимо хорошо настроили все ), а вот сам почему не могу добиться того чтобы он сам генерил миграции на основании моих entity. Будет очень полезно узнать как сделать не create, а именно generate.

vardanurumyan
Автор

Все пути к миграциям лучше ставить в папку src, тогда оно корректнее работает

romanryaboshtan
Автор

Миграции не для записи данных, а для создания и модификации структуры базы. Для заселения базы данными применяются сидеры, обычно для того чтобы залить тестовые данные, сидером же можно создать первоначальные данные для работы дева или тестировщиков. Общее правило: миграции создают структуру, сидер по мере изменения структуры тоже модифицируется/дополняется, затем на каждый before тест кейса перезаливается дата из сидера и прогоняются тесты (чтобы сохранить консистентность тестов). Тоже самое для багфиксов - в сидере создаются данные для рипродюсирования и тестом проверяется валидность фикса.

SuperBatiskaf
Автор

Прекрасная работа с git и github. Лучшего объяснения не видел нигде! 10/10

ПавелЧекушкин-гз
Автор

Попробуйте Prisma js orm с NestJs получите кучу впечатлительных эмоций. Сейчас пробую NAN (Nx Angular NestJs) And Prisma. Порадуйте новым контентом

diatm
Автор

Спасибо за ваш труд!
Очень интересные и содержательные видео. Прошу, не прекращайте и потихоньку снимайте всё, на что появится идея.

investWhale
Автор

Привет Максим капец ты профи, к сожелению не получилось настроить миграции, вроде все сделал так

Ев-генийХодзинский
Автор

Подскажите, как можно задать порядок выполнения скриптов? Когда есть зависимости по FK в базе и важен порядок создания таблиц?

aprilskyserg
Автор

Привет, open server подойдёт для запуска sql?

arkadii
Автор

Круто что ты отвечаешь на комментарии, хочу задать вопрос в таком случае, будет ли у тебя на канале видео или цикл видео по докеру и nginx? Ну с точки зрения nodejs конечно как это все сделать чтобы было айс? инфу найти конечно можно в интернете, но у тебя хорошо получается объяснять думаю многим будет полезно такие видео а-ля вот мы сделали приложение теперь давайте сделаем обратный прокси и т.д.

АлексейКравец-ей
Автор

Просто когда вызываешь typeorm init как я сказал, это проще, оно сразу генерирует корректный ormconfig.json с путями в src, и так меньше мороки, оно так всё хорошо работает

romanryaboshtan
Автор

Интересно миграции можно наверное сделать наподобие как в laravel artisan. Хм есть ли в nest или npm как в laravel типо фэйкера заполнить таблицу в бд фейковыми данными нежели наполнить вручную?

diatm
Автор

subscribers вообще не будут использоваться?

Vladimir-dyro
Автор

очень интересно было бы послушать про БД! спасибо огромное за уроки!

aleksandrgradov