flpolprojects commited on
Commit
4a8a9a2
·
verified ·
1 Parent(s): b11e855

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +6 -2
app.py CHANGED
@@ -35,7 +35,12 @@ def load_data():
35
  try:
36
  download_db_from_hf()
37
  with open(DATA_FILE, 'r', encoding='utf-8') as f:
38
- return json.load(f)
 
 
 
 
 
39
  except FileNotFoundError:
40
  logger.warning("Локальный файл базы данных не найден после скачивания.")
41
  return {'products': [], 'orders': []}
@@ -123,7 +128,6 @@ async def show_products(message: types.Message):
123
  for product in data['products']:
124
  photo_url = f"https://huggingface.co/datasets/{REPO_ID}/resolve/main/photos/{product['photo']}" if 'photo' in product else None
125
  caption = f"🏷 {product['name']} - {product['price']} руб.\nОписание: {product['description']}\n/id: {product['id']}"
126
-
127
  if photo_url:
128
  try:
129
  await bot.send_photo(chat_id=message.chat.id, photo=photo_url, caption=caption, reply_markup=get_product_keyboard(product['id']))
 
35
  try:
36
  download_db_from_hf()
37
  with open(DATA_FILE, 'r', encoding='utf-8') as f:
38
+ loaded_data = json.load(f)
39
+ # Проверка структуры JSON: ожидается словарь с ключами 'products' и 'orders'
40
+ if not (isinstance(loaded_data, dict) and 'products' in loaded_data and 'orders' in loaded_data):
41
+ logger.error("Неверная структура JSON файла, ожидается словарь с ключами 'products' и 'orders'. Используем дефолтное значение.")
42
+ return {'products': [], 'orders': []}
43
+ return loaded_data
44
  except FileNotFoundError:
45
  logger.warning("Локальный файл базы данных не найден после скачивания.")
46
  return {'products': [], 'orders': []}
 
128
  for product in data['products']:
129
  photo_url = f"https://huggingface.co/datasets/{REPO_ID}/resolve/main/photos/{product['photo']}" if 'photo' in product else None
130
  caption = f"🏷 {product['name']} - {product['price']} руб.\nОписание: {product['description']}\n/id: {product['id']}"
 
131
  if photo_url:
132
  try:
133
  await bot.send_photo(chat_id=message.chat.id, photo=photo_url, caption=caption, reply_markup=get_product_keyboard(product['id']))