Оптимизация Django. 2 - проектирование приложения Django + DRF View API endpoint

  Рет қаралды 12,736

Senior Pomidor Developer

Senior Pomidor Developer

Күн бұрын

Пікірлер: 65
@vegzuzvegzuz2866
@vegzuzvegzuz2866 2 жыл бұрын
Спасибо за курс! Не так много годного контента в ру сегменте, устал уже от этих индусов.
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper 2 жыл бұрын
У индусов есть достаточно годные курсы, я на Udemy что-то видел. Но произношение сложно понимать , особенно для русско-язычного человека.
@korumika3798
@korumika3798 Жыл бұрын
Как всегда спасибо! Как же приятно стало работать после этих курсов с терминалом, честно, всегда он меня пугал "О боже! что за черный ящик Пандоры....", сейчас когда постоянно использую уже стал как родной)))
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper Жыл бұрын
Да, дело привычки.
@ВиталийКоновалов-г1ц
@ВиталийКоновалов-г1ц 2 жыл бұрын
Спасибо, курс супер!
@bernardsoul8936
@bernardsoul8936 8 ай бұрын
Спасибо! Курс хорош, подача приятная)
@agmwpomewg
@agmwpomewg 2 жыл бұрын
Крутой курс, спасибо =)
@noname52rus
@noname52rus Жыл бұрын
Спасибо тебе Человек!
@MrCipec
@MrCipec Жыл бұрын
22:22 Как получилось зайти на 127.0.0.1, если в докер-композе прописан 0.0.0.0 ? Или где-то внутри адрес меняется?
@jamjam3337
@jamjam3337 11 ай бұрын
спасибо!😎
@axeaxe1819
@axeaxe1819 2 жыл бұрын
super!!!
@TBRAK78
@TBRAK78 Жыл бұрын
Что-бы не путаться в названиях, хорошей практикой будет добавлять app в конце наименования приложения.
@MrArtlex
@MrArtlex 2 жыл бұрын
префикс r перед строкой делает её сырой (row string) Спасибо за курс. Все супер
@Rulezzz3
@Rulezzz3 Жыл бұрын
raw ;)
@Andrey_Fedorov
@Andrey_Fedorov 2 жыл бұрын
Не понимаю где хранятся данные sql. Если они в докере, то почему они не стираются при перезапуске? Я повторил первый урок, у меня все работает но один раз миграции слетели, не могу понять логику…..
@karasik5695
@karasik5695 2 жыл бұрын
у него не настроены volumes для базы, думаю дальше будет, хотя самому интересно почему нет)
@Andrey_Fedorov
@Andrey_Fedorov 2 жыл бұрын
@@karasik5695 но почему-то работает :)
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper 2 жыл бұрын
Честно, сам не понимаю почему работает, но работает 😁
@ClinKZKZKZ
@ClinKZKZKZ 2 жыл бұрын
тут ответ на ваш вопрос, если я не ошибаюсь.
@ClinKZKZKZ
@ClinKZKZKZ 2 жыл бұрын
Следует различать остановку контейнера и удаление контейнера. Первый возникает, когда основной процесс в контейнере останавливает выполнение (вероятно, потому что вы вручную отправили сигнал остановки). В этом случае контейнер по-прежнему доступен и может быть перезапущен со всеми сохраненными в нем данными. Это то, что происходит в вашем примере. Второе происходит, когда вы явно удаляете контейнер. Это можно сделать с помощью специальной команды или с помощью аргумента удаления (например, docker run --rm ...), применяемого при запуске. В этом случае данные контейнера теряются. docker-composeпо умолчанию не удаляет контейнеры и перезапускает их. Чтобы изменить поведение, просто используйте, docker-compose up --force-recreate ...и вы будете получать девственные контейнеры при каждом запуске.
@rushanusmanov4850
@rushanusmanov4850 11 ай бұрын
Подскажи с чем связана данная ошибка с миграциями: django.db.migrations.exceptions.InconsistentMigrationHistory: Migration incidents.0001_initial is applied before its dependency systems.0001_initial on database 'default'. Хочу выполнить команду migrate, выходит данная ошибка. Заранее спасибо
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper 11 ай бұрын
Хм. Можно попробовать сделать incidents migrate zero и дальше тоже самое , с чего ошибка возникает. Если не поможет то можно в ТГ группе спросить, ссылка в профиле
@BorisenkoV89
@BorisenkoV89 2 жыл бұрын
Спасибо
@Dnsmel
@Dnsmel Жыл бұрын
При FK , если модель одна , можно не писать releated name Оно автоматом создается client.subscription_set А вот если еще один атрибут FK Добавить, с тем же Client, то уже будет ругаться и там надо будет rn.
@TimRock123
@TimRock123 2 жыл бұрын
а почему не используешь консоль контейнера? неудобно же писать каждый раз такие огромные команды для запуска каждой отдельной команды внутри контейнера
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper 2 жыл бұрын
Можно, но вцелом пофиг.
@Webian
@Webian Жыл бұрын
29:45 не пойму почему значение source, client.company_name пишется с маленькой буквы, это сам DRF так устроен не логично?
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper Жыл бұрын
Я думаю что это идет от названия связей и от related_name , которые в Django ORM. Это не от названия модели.
@Webian
@Webian Жыл бұрын
@@SeniorPomidorDeveloper В моей проекте и модели нет related_name поэтому точно оно не играет роль. Остановился на том что чуть далее ты указал модель Subscription, и тут восстанавливается логика, если к Subscription добавить client.company_name. Спасибо!
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper Жыл бұрын
Это связь. Либо прямая, либо через related .
@andreykuskov8807
@andreykuskov8807 2 жыл бұрын
а зачем из-под докера команды manage.py использовать, если в докер и так копируется весь проект? Почему просто не создать виртуальное окружение с той же версией Питона и кодить как есть, изменения все равно будут отображаться в докере....
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper 2 жыл бұрын
Наверно по тому что интерпретатор создается и запускается в докере.
@andreykuskov8807
@andreykuskov8807 2 жыл бұрын
@@SeniorPomidorDeveloper Насколько помню, в первой серии как раз виртуалка используется, чтобы Pycharm CE подхватил импорты корректно в проекте. А раз так, то зачем все же через докер команды, привычка? Или я что-то в этой схеме упускаю?
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper 2 жыл бұрын
Ну где интерпретатор проекта находится там и надо .manage.py запускать . Этот локальный интерпретатор может быть другой версии , будет запускать другой код. По идее, его вообще быть не должно , если мы разрабатываем через докер
@ibrahimoglu
@ibrahimoglu 2 жыл бұрын
👍
@ebr176
@ebr176 Жыл бұрын
странно, что ссылки на гит нет в описании
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper Жыл бұрын
github.com/chepe4pi/service_app/
@karasik5695
@karasik5695 2 жыл бұрын
Спасибо за видео! А так задумано что у постгреса нет volumes? Или это дальше будет?)
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper 2 жыл бұрын
Смотрите в следующих сериях)
@ИванЖигунов-д4щ
@ИванЖигунов-д4щ 2 жыл бұрын
Будет кокой-либо негатив в том, если я буду разрабатывать не из под докера (жрет ресурсы, непривычная консоль и тд.), а позже просто поменяю настройки бд и пересоберу докер? Перефразирую, какие неприятности меня могут ждать, если я в готовом проекте создам dockercompose и использую билд?
@SeliverstovMusic
@SeliverstovMusic 2 жыл бұрын
Можно, я так делал. Использовал sqlite, а потом менял БД и всё в докер оборачивал.
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper 2 жыл бұрын
Можно вообще без докера обойтись, если охота заморачиваться с запуском celery воркеров и установкой redis и постгрес
@ussenUtebayev
@ussenUtebayev Жыл бұрын
Вопросики, почему бы вместо лишних связей с встроенным моделью просто наследоваться от него?
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper Жыл бұрын
А зачем от нее наследовать? Это только лишние поля даст в моделе Client. В любом случае request.user останется от старой модели . Есть вариант переопределять auth model , но это уже совсем другая история
@ussenUtebayev
@ussenUtebayev Жыл бұрын
@@SeniorPomidorDeveloper ну вы правы, тупанул
@Artem36
@Artem36 2 жыл бұрын
Для того чтобы не было ошибки регистрации приложения в settings, нужно просто заменить Джанго на Flask))
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper 2 жыл бұрын
Flask - отстой
@Artem36
@Artem36 2 жыл бұрын
@@SeniorPomidorDeveloper Почему, если ни секрет?
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper 2 жыл бұрын
Просто не люблю его, ничего личного )
@a98cb985
@a98cb985 Жыл бұрын
flask - это дорога к decorators hell тогда уж fastAPI
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper Жыл бұрын
Вообще удобно для микро-проектов. 20 строчек кода и приложение готово. Только вот такие проекты имеют свойство расти и превращаться в средние или даже крупные . И вот тогда уже начинается hell
@sergeygreb6851
@sergeygreb6851 Жыл бұрын
Привет! Автор, а запили еще, пожалуйста, ролик по платежке stripe/ народу было бы интересно
@backend404
@backend404 11 ай бұрын
Здравствуйте, я тоже сейчас пытаюсь подключить плтежку через страйп, у вас получилось сделать это?
@sergeygreb6851
@sergeygreb6851 11 ай бұрын
Антонио Меле посмотри книгу Django 4 в примерах там есть пример интеграции@@backend404
@Developer_python_
@Developer_python_ Жыл бұрын
Капец-грузинских лари- на данный момент смотрю это в Тбилиси)
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper Жыл бұрын
😀
@Gribori
@Gribori Жыл бұрын
Чтобы не забывать добавлять приложения в settings, нужно помнить что их нужно добавить ;)
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper Жыл бұрын
Звучит как рекурсия )
@dimondimarikdmitry
@dimondimarikdmitry 8 ай бұрын
забыл добавить список приложений = 50 раз отжался
@BorisenkoV89
@BorisenkoV89 2 жыл бұрын
User = get_user_model()
@АлексейБирюков-ю4г
@АлексейБирюков-ю4г 2 жыл бұрын
А про fastapi будет курс?
@SeniorPomidorDeveloper
@SeniorPomidorDeveloper 2 жыл бұрын
Пока не планировал
Оптимизация Django. 3 - Оптимизация ORM-query
35:38
Senior Pomidor Developer
Рет қаралды 10 М.
Оптимизация Django. 8 - Redis и ручной кеш
24:48
Senior Pomidor Developer
Рет қаралды 11 М.
“Don’t stop the chances.”
00:44
ISSEI / いっせい
Рет қаралды 62 МЛН
Quando eu quero Sushi (sem desperdiçar) 🍣
00:26
Los Wagners
Рет қаралды 15 МЛН
CLINE AGENTS + DEEPSEEK = INSANE CHEAP WEBSITES
5:16
Income stream surfers
Рет қаралды 182
Оптимизация Django. 5 - Celery + Docker
30:31
Senior Pomidor Developer
Рет қаралды 16 М.