@Ornitier

Почему пишет, что нет такого аттрибуда?

Есть функция выборки из базы данных sqlite, выглядит так:
async def native_city_sqlite(user):

    db = sq.connect('data.db')
    cur = db.cursor()

    data_native = cur.execute(f"SELECT * FROM native_city WHERE user_id = {user}")
    data_dict = data_native.fetchall()
    for data in data_dict:
        nat_city = data[1]
        area = data[2]
        db.commit()


И есть функция бота, которая выполняется в хандлере:
async def native_city_conclusion(mode, message: types.Message):
        
    user = message.from_user.id
    database.native_city_sqlite(user)

    await city(database.nat_city, mode, database.area)
    
    if mode == 'завтра':
        with open('weather_tomorrow.json',  encoding='utf-8') as file:
            data_weather = json.load(file)

            for k, v in data_weather.items():
                weather_data = f"{k}: {v}"

                await message.answer(weather_data)
    
    elif mode == 'сегодня':
        with open('weather_today.json',  encoding='utf-8') as file:
            data_weather = json.load(file)

            for k, v in data_weather.items():
                weather_data = f"{k}: {v}"

                await message.answer(weather_data)

    elif mode == 'месяц':
        with open('weather_30day.json',  encoding='utf-8') as file:
            data_weather = json.load(file)

            for k, v in data_weather.items():
                weather_data = f"{k}: {v}"

                await message.answer(weather_data)


Вот сам hanler:
@dp.message_handler(commands=['native_city_today'], state = None)
async def today(message: types.Message):

    mode = 'Сегодня'
    await native_city_conclusion(mode, message)


При выполнении /native_city_today выдаётся такая ошибка "File "d:\Documents\Python\bots\weather_bot_old — копия\bot.py", line 34, in native_city_conclusion
await city(database.nat_city, mode, database.area)
AttributeError: module 'database' has no attribute 'nat_city'"

В чём проблема?
  • Вопрос задан
  • 39 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы