def count_rows(): """ Данный метод считает общее количество строк в базе данных и сохраняет в хранилище. Потом из этого количества будем выбирать музыку. """ db = SQLighter(database_name) rowsnum = db.count_rows() with shelve.open(shelve_name) as storage: storage['rows_count'] = rowsnum
def game(message): # Подключаемся к БД db_worker = SQLighter(config.database_name) # Получаем случайную строку из БД row = db_worker.select_single(random.randint(1, utils.get_rows_count())) # Формируем разметку markup = utils.generate_markup(row[2], row[3]) # Отправляем аудиофайл с вариантами ответа bot.send_voice(message.chat.id, row[1], reply_markup=markup, duration=20) # Включаем "игровой режим" utils.set_user_game(message.chat.id, row[2]) # Отсоединяемся от БД db_worker.close()