1.0 KiB
1.0 KiB
2026-09-13 — Несколько бюджетов + is_active
Модель
- У пользователя много строк в
budgets(снят UNIQUE user_id) - Поля:
name,is_active,users.selected_budget_id expenses.budget_id— траты привязаны к конкретному бюджету- Миграция на старте API (
migrate_schema) для старых БД
Семантика
- Активный — можно писать траты
- Текущий (selected) — default для /status, операций, журнала
- Неактивный отклоняет новые expenses
API
GET/POST /api/me/budgetsPUT /api/me/budgets/{id}PATCH /api/me/budgets/{id}/activePOST /api/me/budgets/{id}/selectbudget_idна expenses / budget GET
Клиенты
- Web: страница
/budgets, переключатель вкл/выкл и «текущий» - Bot:
/budgets,/budgetсоздаёт новый; inline select/toggle