170 похожих чатов

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

бд из джанго?

31 ответов

25 просмотров

конечно. Джанго примерно про это

Max- Автор вопроса

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

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

Max- Автор вопроса

А где определять список схем? Это вы сейчас про создание команд в джанго? Или как это сделать?

это я про файл настроек проекта, settings.py

Max- Автор вопроса

Не понимаю, если честно, что нужно сделать с settings.py, чтобы проверить/создать бд и схемы в ней, если их нет... У меня сейчас прописана бдшка и все, в ручную приходится дополнительную схему создавать, если ее нет Это можно как-то в сеттинге создавать?

возможно через опции БД, типа: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'OPTIONS': { 'options': '-c search_path=portal,public,erz' }, }

а джанго-модели описал?

Max- Автор вопроса

Да, просто миграцию сделать не могу, если нет схемы

за создания файлов для миграций, отвечает management команда - ./manage.py makemigrations

Max- Автор вопроса

Понял, спасибо за наводку)

если в этом направлении пусто, то придётся предварительно коннектится к бд без ОРМ джанго, и прогонять raw скрипт по наличию/созданию схем

кажется я не совсем понял: про какие "схемы" вы общаетесь?

Схемы бд.

схемы в бд. если их нет в бд, а в модели явно прописана схема к примеру

в моем понимании - это совокупность таблиц, с ограничениями и индексами. Это же все описывается джанго-моделями. Или еще можно так назвать: картинку / "карту ума", которая все выше перечисленное отображает вместе со связями между таблицами. Но сюда никак не относятся миграции 🤔 Вот и спрашиваю: то ли я не понимаю о чем речь, то ли парни общаются на своей волне)

Да, схема бд это то самое, о чем ты говоришь. Видимо я недостаточно внимательно тред прочитал)

вот если "совокупности таблиц" в бд нет, а в моделях они явно указаны для определённых таблиц, то джанга их не создаёт сама при развёртывании проекта на чистую базу к примеру. может и умеет, но я не знаю пока штатных методов чтоб схемы создавались.

если в моделях явно не указывать схемы - то они создаются в public к примеру по умолчанию

штатный метод: - генеришь файлы миграций на локалке - ./manage.py makemigration - переносишь, вместе с проектом, для развертывания на сервере - применяешь на сервере - получаешь новую БД на сервере Профит!

а надо в какую схему?

так вы про эти схемы общались? - сразу не допер))

++ не знаю про такую возможность, мне тоже будет полезно. Спасибо

а зачем тебе таблицы раскиданные по разным схемам БД? Обычно все в public пишут

Max- Автор вопроса

https://www.amvtek.com/blog/posts/2014/Jun/13/accessing-multiple-postgres-schemas-from-django/ Если правильно понял, эта функция для того, чтобы не привязать модель к схеме через using('db_schema'), сейчас решил проблему следующим образом: подправил миграцию инициализации - перед созданием таблиц в другой схеме migrations.RunSQL("CREATE SCHEMA new_schema;"), migrations.CreateModel(...

Max- Автор вопроса

по смыслу разделил бд на схемы: в паблик все, что активно используется юзерами, в другой таблицы, которые автоматически заполняются, но для вывода информации не используются

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

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

а эти требования как-то обоснованы или просто заказчик такой (будем прилично выражаться 😃)?

Max- Автор вопроса

+

примерно про это я и говорил, что миграции правятся. но это надо всегда помнить, что не всегда реально

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта