Задать вопрос
@kavermoki
junior

Почему записываются в БД «не те» данные?

Приветствую!

Есть код:
@dp.message_callback(F.callback.payload == 'task')
async def task(event: MessageCallback):
    await event.message.delete()
    await event.message.answer(text='Нажми "Создать задачу":',
                                    parse_mode=ParseMode.HTML, attachments=[btnall.btntask.as_markup()])


@dp.message_callback(F.callback.payload == 'newtask')
async def newtask(event: MessageCallback):
    await event.message.delete()
    await event.message.answer(text="Какое сообщение записать в БД?")
    if event.chat.type == ChatType.DIALOG:
        if event.from_user.user_id == adminid:
            text = event.message.body.text
            us_id = event.from_user.user_id
            cursor.execute(
                'INSERT INTO users(us_id, text) VALUES(?, ?)',
                (us_id, text))
            conn.commit()
        else:
            await event.message.answer("Вы не можете создавать задачи")


В данном случае записываются в базу текст Нажми "Создать задачу, который появляется при inline кнопки callback.payload == 'task'.

Почему так происходит?
  • Вопрос задан
  • 240 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Хекслет
    Python-разработчик
    10 месяцев
    Далее
  • Skillbox
    Python-разработчик
    10 месяцев
    Далее
Решения вопроса 1
@Everything_is_bad
Почему так происходит?
потому что в event.message.body.text находиться именно этот текст.

Давай уже начинай думать, ты в одном действии посылаешь вопрос и сразу записываешь данные в базу, не дожидаясь ответа
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
от 100 000 до 150 000 ₽
Hard Bootstrapping LLC. Санкт-Петербург
от 250 000 до 500 000 ₽
ITK academy Воронеж
от 75 000 ₽