Справочники: сидинг не откатывает имя фракции, заданное админом
seed_reference_data идёт при каждом старте (entrypoint.sh, lifespan) и перезаписывал name_ru существующих фракций значением из кода — переименование из админки жило до ближайшего рестарта. Теперь имя из кода получает только новая фракция; дополнение и порядок синхронизируются как раньше. #72 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LqSoRj99iwVEH5U5fnZgsd
This commit is contained in:
@@ -33,7 +33,13 @@ FACTIONS: list[tuple[str, str, str, int]] = [
|
||||
|
||||
|
||||
def seed_reference_data(session: Session) -> None:
|
||||
"""Создаёт/обновляет дополнения и фракции. Безопасно вызывать многократно."""
|
||||
"""Создаёт/обновляет дополнения и фракции. Безопасно вызывать многократно.
|
||||
|
||||
Идёт при каждом старте (entrypoint.sh, lifespan dev), поэтому не перетирает то, что
|
||||
правят руками: имя существующей фракции меняет админка (admin_service.rename_faction),
|
||||
и после создания записи источник правды для него — БД (#72). Имя из кода получает
|
||||
только новая фракция; поправить имя существующей — админкой или миграцией.
|
||||
Служебные поля (дополнение, порядок) и всё у дополнений синхронизируются с кодом."""
|
||||
code_to_expansion: dict[str, Expansion] = {}
|
||||
|
||||
for code, name_ru, is_base, order in EXPANSIONS:
|
||||
@@ -61,7 +67,6 @@ def seed_reference_data(session: Session) -> None:
|
||||
)
|
||||
session.add(fac)
|
||||
else:
|
||||
fac.name_ru = name_ru
|
||||
fac.expansion_id = expansion.id # type: ignore[assignment]
|
||||
fac.sort_order = order
|
||||
|
||||
|
||||
Reference in New Issue
Block a user