Node.js #15 Интеграция БД в приложение (MongoDB Integration)
HTML-код
- Опубликовано: 28 сен 2024
- #YauhenK #webdev #Node #Express
Всех приветствую в курсе «Node.js».
В данном видеокурсе мы с вами рассмотрим Node.js, серверную технологию которая позволяет исполнять код написанный на JavaScript вне браузера. Разберём базовые концепции и встроенные модули, которые активно используются при разработке сервера. Рассмотрим механизм коммуникаций между сервером и браузером. Создадим базовый роутинг на чистом Node.js. Подключем Express и перепишем роутер. Научимся работать с динамичными данными с помощью шаблонизатора Node.js. Напишем новостное приложение с поддержкой CRUD операций и хранением данных в MongoDB. Создадим свой API по возврату данных из БД. И в заключение, загрузим готовое приложение на Heroku.
✒ Репозиторий курса:
✔ GitHub: github.com/Yau...
✒ Полный список готовых и планируемых курсов:
✔ Trello: trello.com/b/R...
✒ Автор курса:
✔ RUclips: / yauhenkavalchuk
✔ Instagram: / yauhenkavalchuk
✔ Twitter: / yauhenkavalchuk
✔ VK: YauhenK...
✔ LinkedIn: / yauhenkavalchuk
✔ GitHub: github.com/Yau...
✔ VK (Группа): webdevcom
✒ Поддержать развитие канала: github.com/Yau...
Мужик, спасибо большое. С новым интерфейсом монги, совсем заплутал. То, что нужно. Разбор мелких и банальных вещей!
Пожалуйста)
Случайно решил посмотреть данное видео. Как же мне повезло, когда оно решило мою проблему с подключением к MongoDB. Уже думал, что мне не удастся с ней поработать. Автор - красавчик, спасибо тебе спустя два года :)
Спасибо большое за отзыв
Евгений, спасибо большое за такой шикарный курс!)
Пожалуйста)
Классный урок, спасибо!
👍
На мой взгляд для большинства актуальнее знания по Nestjs.
И с нормальной БД типа PostgeSQL..
Учитывая что GraphQL - это как минимум интересная технология, то в курс можно было бы добавить её вместо REST .
Учитывая что вводных уроков по Несту в ютубе достаточно(и все умеют читать докумментацию), то можно было бы дать минимальную вводную часть и максимально информативную.
Никто не рассказывает про то как подключать телеграмм, как работать с файлами (док, экскль и тд- как загружать на сервак, как формировать и выдавать серваком и тд).
Как подключать почтовые сервисы (или писать свои).
Как это все соединить с докером, настроить гитхаб-экшены и тп.
И все это можно уложить в 1 большой курс т. К. Это актуально.
Выпусть серию как айтиКамасутра - аля Путь самурая из 100 часовых видосов по этой теме где ты расскажешь разжевывая тему бекенда на Несте.
У тебя будут гарантированы просмотры и подписка на донаты.
А чистая нода к тому же с Монгой...
Чтобы создать такой курс не всегда есть время. Не забывайте, что Евгений делает ролики в свободное от работы время
Veles 83 всё верно написал! Я не блогер, я разработчик. И работаю я полноценно, а канал это просто хобби. И у меня не на всё хватает времени, особенно на большие и углубленные курсы
Любой нормальный разраб умеет читать доку, у телеги она хорошо описана, как и сам докер. У IT камасутры очень низкий уровень контента, лучше вообще не приступать к изучению чем по его пути
Суть в том чтобы начать и посмотреть общий принцип, если дальше не можешь сам разобраться, то так и будешь бегать искать курсы, сначала как пользоваться молотком, потом отверткой, потом шуруповертом.
Не нашёл связи между таблицей в БД "posts", и моделью Post от postSchema. Где связь того, в какую именно таблицу мы пишем?
Посмотрите дополнительно курс по MongoDB, можете пару последних видео там этот момент я объясняю подробнее
Спасибо за полезный материал)
Возник вопрос: как именно mongoose понимает с какой коллекцией документов работает данная модель? При создании модели Post мы нигде не указали имя коллекции 'posts' как он их связал друг с другом?
Автоматически. Единственное условие имя модели и коллекции должны совпадать и коллекция должна быть во множественном числе. Можете дополнительно посмотреть курс по MongoDb на канале, там я рассказываю об этом
@@YauhenKavalchuk Уже посмотрел 👍
Евгений приветствую у меня после сохранения нового поста в БД падает ошибка.
[ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client.
Погуглил, выяснил что отправляются два последовательных запроса res.send. Не могу понять почему. Вот мой роут
app.post("/add-post", (req, res) => {
const {title, author, text} = req.body
const post = new Post({ title, author, text })
post.save().then(result=> res.send(result))
.catch(err=> {
console.log('post save error', err );
res.render(createPath('error'), {title: 'Error'})
})
Спасибо за ответ
В описании видео есть код урока вы можете сравнить его со своим. Я не вижу проблем в куске, который вы отправили. Но выглядит так, как будто на этом роуте у вас висит ещё один запрос
Как оперировать тем, в какую базу данных и в какую коллекцию будут вставлены данные? У меня, к примеру, после обработки POST запроса создалась новая база данных "test" с коллекцией "posts", а уже созданная база данных node-blog с ее коллекцией была проигнорирована🤔
Уже нашел похожий вопрос в комментариях :)
👍 вообще можно и курс по mongodb посмотреть, там все нюансы подключения и настройки объясняются подробно
Здравствуйте, Евгений. Спасибо за уроки. А код к к уроку 15 почему-то на гите отсутствует.
Ну как отсутствует, всё есть. Только что перепроверил
@@YauhenKavalchuk пишет: The 'YauhenKavalchuk/node-js' repository doesn't contain the 'views' path in 'lesson_15'. На 13 и 14 тоже самое
Монго диби в России уже не работает. Снимите видео как работать с сервером базой данных mysql
Я По вашим урокам Node js изучаю
В ближайшее время такой курс не планирую
Как сейчас пользоваться данным сервисом?Будет работать бд через VPN в России?
Будет
У меня выводить ошибка Post is not a constructor когда использую синтаксис Ecmascript(import и export default {}), можно ли исправить ? Заранее спасибо
В описании есть ссылка на репозиторий, можете сравнить код
Я так понимаю на сегодняшний день с монго из РБ нет возможности работать. ВО всяком случае на сайт не заходит. Грусть
Верно
Попробуйте через VPN.
Яка сумна новина!!! 😁
Ничего страшного, по телевизору же сказали что будет импортозамещение))
Всё прекрасно, а вот шаблонизатор прям не нравится...
¯\ _(ツ)_/¯
как сделать подключение к нескольким БД в приложении
Просто импортируете несколько баз и точно так же, подключаете их одна за другой, как в описанном примере
пересмотрела раз 5 наверное чтоб понимать, мозголомка какая то но когда в конце приходит абсолютное понятие о чем идет речь будет просто каифово
👍
Настолько грамотный и такои спокоиный человек.Обьясняете все классно и очень понятно
Спасибо большое за отзыв
круто спасибо поставил лайк + комент, продвигайся видос
Спасибо
Можно ли не использовать клауд а развернуть эту БД локально?
Конечно можно, я в первых же уроках это и делаю
Можно плагин на иконки в проводнике?
В этом видео можно найти
ruclips.net/video/g8LmiLTXkqo/видео.html
Курсы на самом деле - это лучшие, что нашёл!
👍