Имеется данная функция:
async def nbv(message):
for hus in cur.execute(f'SELECT name FROM cathlete WHERE id = ?', (message.from_user.id,)).fetchall():
if message.text == hus[0]:
await other.cm_start(message)
Суть заключается в том, что по введенному слову в чат тг, она проверяет наличие такого же слова в бд. Если такое слово находится то она перенаправляет к другой функции, которая активирует машину состояния:
class FSMAdmin(StatesGroup):
names = State()
id_tg = State()
all_game = State()
winners = State()
async def cm_start(message : types.Message):
await FSMAdmin.all_game.set()
await message.answer('Введите количество игр, которое вы сыграли:')
async with state.proxy() as data:
data['names'] = message.text #тут должно передаться слово, которое мы получили из прошлой функции
async def load_win(message : types.Message, state: FSMContext):
async with state.proxy() as data:
data['id_tg'] = message.from_user.id
data['all_game'] = message.text
await FSMAdmin.next()
await message.answer('Введите количество побед:')
async def load_lose(message : types.Message, state: FSMContext):
async with state.proxy() as data:
data['winners'] = message.text
async with state.proxy() as data:
await message.answer(str(data))
await state.finish()
суть в том, что выводит:
FSMContextProxy state = 'FSMAdmin:winners', data = {'id_tg': 1031222801, 'all_game': '10', 'winners': '6'}
Но почему то не добавляется в этот перечень "names"
Пробовал по разному, но никак не получается передать слово из первой функции в значение переменно names