• Как в aiogram при рассылке-приглашении с кнопками принять/отказаться передать данные в хендлер, который ловит кнопку принять??

    SoreMix
    @SoreMix
    yellow
    ID ивента сильно большое? Если нет, киньте его просто в кнопку, разделив каким нибудь символом. Потом вытащите в хендлере этот ID. Так и париться с fsm не надо, и появляется поддержка сразу нескольких ивентов. А так у вас стейты запутаны, ID ивента ставите в FSM администратора, и потом пытаетесь его достать из FSM юзера. По идее можно указать конкретно, стейт из какого чата вы хотите достать:
    https://docs.aiogram.dev/en/latest/_modules/aiogra...

    InlineKeyboardButton('Принять', callback_data=f'sign_up_{eventid}')
    
    ....
    
    
    @dp.callback_query_handler(lambda callback: callback.data.startswith('sign_up_'))
    async def cb_add_confirm(callback: types.CallbackQuery):
        event_id = callback.data.split('_')[-1]
    Ответ написан
    1 комментарий
  • Ошибка InvalidForeignKey, уникальность соблюдена, в чем ошибка?

    @Akina
    Сетевой и системный админ, SQL-программист.
    ОШИБКА: в целевой внешней таблице "users" нет ограничения уникальности, соответствующего данным ключам

    Ошибка указывает на проблему, связанную со следующим внешним ключом:

    FOREIGN KEY(user_id) REFERENCES users (user_id)

    Таблица users должна существовать.
    В ней должно существовать поле user_id.
    Это поле должно быть определено как уникальное. Причём отдельно, а не в составе композитного уникального индекса.

    Так что смотрите, что именно нагенерила модель.

    PS. Если определено PRIMARY KEY (user_id), то дополнительное UNIQUE (user_id) абсолютно бессмысленно.
    Ответ написан
    Комментировать