Skip to content

Commit

Permalink
fix: устранить баг добавления ссылки в заметки
Browse files Browse the repository at this point in the history
- Убрать установку локали (сервер падает на ошибке)
- Добавить откат бд при ошибках
- Добавить клавиатуры для возврата в главное меню после изменения веса и добавления тренировки в модуле телеграм
  • Loading branch information
A-V-tor committed Sep 28, 2023
1 parent 66d5dbf commit a1eb05e
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 3 deletions.
2 changes: 1 addition & 1 deletion project/adminpanel/static/admin/js/script-admin.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ const App = {
try {
const res = await fetch(this.notesUrl, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
headers: { 'Content-Type': 'application/json', 'Authorization': this.authorizationKey},
body : JSON.stringify({data: `<a href="${link}" class="link-note" target="_blank">${textNoLink}</a>`})
});
if (!res.ok) {
Expand Down
2 changes: 1 addition & 1 deletion project/telegram/bot.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
from .logger import get_loggs

# установка родной локали, чтобы название месяца Python стал выводить кириллицей
locale.setlocale(locale.LC_ALL, 'ru_RU')
locale.setlocale(locale.LC_ALL) # 'ru_RU' сервак слетает

load_dotenv(find_dotenv())

Expand Down
10 changes: 10 additions & 0 deletions project/telegram/expense_journal.py
Original file line number Diff line number Diff line change
Expand Up @@ -137,8 +137,13 @@ async def write_to_database_new_expense(
db.commit()
msg = 'Запись сделана!'
except ValueError as e:
db.rollback()
logger.exception(f'Ошибка значения: {str(e)}')
msg = 'Ошибка\n Значение должно быть числом!'
except Exception as e:
db.rollback()
logger.exception(f'Ошибка значения: {str(e)}')
msg = 'Ошибка\n Что то случилось и все сломалось'

SELECT_CATEGORY = None
kb = ExpenseInlineKeyboard()
Expand Down Expand Up @@ -188,8 +193,13 @@ async def write_to_database_change_expense(
db.commit()
msg = 'Запись сделана!'
except ValueError as e:
db.rollback()
logger.exception(f'Ошибка значения: {str(e)}')
msg = 'Ошибка\n Значение должно быть числом!'
except Exception as e:
db.rollback()
logger.exception(f'Ошибка значения: {str(e)}')
msg = 'Ошибка\n Что то случилось и все сломалось'

CHANGE_CATEGORY = None

Expand Down
12 changes: 12 additions & 0 deletions project/telegram/weight_journal.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ async def weight_journal_root(callback: types.CallbackQuery):
if today_record is not None and today_record.date.date() == today:
msg = f'Вес сегодня ({today}): {str(today_record.value)[:-2]} кг'
kb.add_button('изменить запись', 'change weight')
kb.button_start_menu()
else:
msg = f'Нет записи на {today}'
kb.add_button('добавить запись', 'add weight')
Expand Down Expand Up @@ -86,8 +87,14 @@ async def write_to_database_new_value_weight(
db.commit()
msg = f'Текущий вес: {str(new_note.value)[:-2]} кг'
except ValueError as e:
db.rollback()
logger.exception(f'Ошибка значения: {str(e)}')
msg = 'Ошибка\n Значение должно быть числом!'
except Exception as e:
db.rollback()
logger.exception(f'Ошибка значения: {str(e)}')
msg = 'Ошибка\n Что то случилось и все сломалось'

await message.answer(msg, reply_markup=kb.keyboard)


Expand All @@ -114,7 +121,12 @@ async def change_weight_value(
db.commit()
msg = f'{str(today_record.value)[:-2]} кг'
except ValueError as e:
db.rollback()
logger.exception(f'Ошибка записи значения: {str(e)}')
msg = 'Ошибка\n Значение должно быть числом!'
except Exception as e:
db.rollback()
logger.exception(f'Ошибка значения: {str(e)}')
msg = 'Ошибка\n Что то случилось и все сломалось'

await message.answer(msg, reply_markup=kb.keyboard)
11 changes: 10 additions & 1 deletion project/telegram/workout_journal.py
Original file line number Diff line number Diff line change
Expand Up @@ -256,13 +256,22 @@ async def write_to_database_new_value_workout(
message.message_id -= 1
await message.delete()

kb = WorkoutInlineKeyboard()
kb.button_start_menu()

try:
new_note = MyWorkout(value=text_record)
db.add(new_note)
db.commit()
msg = 'Тренировка добавлена'

except ValueError as e:
db.rollback()
logger.exception(f'Ошибка значения: {str(e)}')
msg = 'Ошибка\n Значение должно быть числом!'
except Exception as e:
db.rollback()
logger.exception(f'Ошибка значения: {str(e)}')
msg = 'Ошибка\n Что то случилось и все сломалось'

await message.answer(msg)
await message.answer(msg, reply_markup=kb.keyboard)

0 comments on commit a1eb05e

Please sign in to comment.