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

Привет, подскажите как лучше сделать. У меня в веб проекте есть

какие-то данные, которые должны быть в бд при работе с проектом, типо справочная информация (например, единицы измерения (кг, метры, сантиметры, штуки)). Как их лучше заносить в бд?
Сейчас они зонясятся с помощью миграций (alembic), создаю просто миграцию, в которой операция вставки в бд, но
Они могут менятся (например колонка какая-то добавилась - и тут уже приходится миграцию новую делать и старую откатывать) и данные могут добавляться (тут просто приходится ещё одну миграцию писать).
Какие ещё есть варианты решения такой задачи? думаю, можно при старте сделать функцию, которая всё проверяет и заполняет если что

14 ответов

15 просмотров

Алембик не должен заносить никаких данных в проект, только создавать структуру базы и вносить в нее изменения. А как вносить данные в базу... Ну, во первых можно реализовать это в самом проекте, какая-то панель для добавления, или админка. Можно напрямую SQL запросами, либо используя утилиты для работы с СУБД.

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

Ruslan- Автор вопроса
Pavel Glukhov
Если исходные данные нормализованы то нет проблем ...

а как и когда мне запускать такой скрипт, у меня веб приложение - насколько норм сделать это по эндпоинту для админа?

Ruslan
а как и когда мне запускать такой скрипт, у меня в...

Что мешает сделать эндпоинт, или одностаничник с загрузкой файла с данными?

Ruslan
а как и когда мне запускать такой скрипт, у меня в...

запускать скрипт можно по расписанию, или сделать какой-то триггер на наличие файлов в укказанной папке. Это ещё один костыльный способ

дело хозяйское. Но звучит прям так себе. 🌝

Ruslan- Автор вопроса
Pavel Glukhov
дело хозяйское. Но звучит прям так себе. 🌝

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

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

Ruslan- Автор вопроса
Pavel Glukhov
Алембик - это средство для миграции базы данных. М...

почему под версией БД ты подразумеваешь только её структуру? Данные же тоже являются её частью

Ruslan
почему под версией БД ты подразумеваешь только её ...

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

Это совершенно оторванные понятия. Структура базы и данные в ней хранящиеся. первое - более статичное, до момента внесения в структуру изменений. Второе 'данные' являются динамическими, так как подвергаются изменениям (добавляются, удаляются, обновляются)

Ruslan- Автор вопроса
Pavel Glukhov
Это совершенно оторванные понятия. Структура базы ...

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

Ruslan
я думаю проблема в том, что понятие миграция бд оч...

Миграция. 1 понятие - перенос данных с источника в источник. 2 - внесение изменений в структуру.

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

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

Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
9
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Коллеги, добрый вечер. Создаю коллекцию от TFPGMap, ключ - перечисление, значение - целое. Нужно отсортировать коллекцию по значению. Как это можно сделать?
Kirill Filippenok
11
Привет, такой вопросик появился кажется ли вам что Rust слишком сложный/строгий для высокоуровневого программирования и слишком "безопасный"/строгий для низкоуровневого?
Крокант
10
Скажи а ты когда этот канал создавал ты уже дельфи не любил, или это со временем пришло?
Роман Лях (rgreat)
18
Всем привет! Использую кастомное модальное диалоговое окошко, все по классике - mrOK, mrCancel как ModalResult. Однако есть нюанс - в главной форме есть универсальный обработч...
Олег Гранишевский
20
Карта сайта