mkone112, Ну тогда самый простой способ - при вызове из контекста передавать соотвествующий аргумент в эту функцию
def inside_context(called_from_context=False):
# some magick
if called_from_context:
# code
else:
# other code
inside_context() # вызов извне
with <any_object> as <some_name>:
inside_context(True) # вызов в контексте
Приведите вопрос к нормальному виду.
Укажите какую библиотеку используете,
Оберните код в соответствующий тег, чтобы он корректно отображался.
Если у вас вылетает сообщение об ошибке, покажите его.
Посмотрите сами на свой вопрос со стороны и подумайте, все ли будет понятно людям.
в файле, где обрабатывается кнопка при нажатии на нее обновите state, добавив в него нужный ID.
В файле, где выполняется редактирование удалите первый этап, где считывается ID таски, остальное оставляйте.
Сергей, а как вы пытаетесь зарегистрировать эти события? dp.register_callback_query_handler() Используете? В интернетах много примеров как это все делать.
Так что если что-то не получается, то лучше показывать что вы делаете, чтобы тут могли как-то помочь.
Кстати, никто не запрещает пользоваться декораторами и отдельной регистрацией хендлеров одновременно.
Tim Novikov, Нет, с обычной кнопкой такое сделать нельзя. С inline кнопками такое тоже нельзя реализовать. Ну разве что сообщение отправит сам бот. Поэтому больше примеров двайте, раз говорите, что где-то такое видели
tatsuki1, ну тогда вам надо запоминать на каком этапе находится каждый пользователь. Заводить базу данных, туда записывать каждый шаг каждого пользователя.
Гораздо проще использовать Inline клавиатуру. Если обычная клавиатура отправляет в чат текст самой кнопки, то Inline содержит в себе необходимую информацию, которую можно обрабатывать как вам угодно. И смотрится она гораздо лучше. Поверьте, это ваш лучший вариант. Изучите как она работает. В интернетах ооочень много информации и примеров.