169 похожих чатов

Ребята как внутри стейта получить данные другого? get_data() выдаёт пустые значения

но в том стейте где они создавались значения выводятся

17 ответов

39 просмотров

await state.get_state() так получаешь стейт, а потом данные

Алекс- Автор вопроса
Komronbek F
await state.get_state() так получаешь стейт, а пот...

Да но это при вызове другого стейта выдаёт его данные а не прошлого Ну или я чёт не правильно делаю

Это как? Можно подробнее или часть кода?

Алекс- Автор вопроса
b
Это как? Можно подробнее или часть кода?

async with state.proxy() as proxy: ls = "" proxy.setdefault("answer1",ls) так сохраняю async with state.proxy() as data: data['answer1'] += f"\n{message.text}" await message.answer(f"Text: {data['answer1']}") так добавляю и вывожу в том же стейте но так не выходит в другом ??? start_answer = State() first_answer = State() эти стейты первый я вызываю несколько раз а второй в конце и в нем нечего (

Алекс
async with state.proxy() as proxy: ls = ""...

Давайте код целиком, пожалуйста

Алекс- Автор вопроса
b
Давайте код целиком, пожалуйста

class TextСonditions(StatesGroup): start_answer = State() first_answer = State() async def Text_in(message: types.Message, state: FSMContext): async with state.proxy() as proxy: ls = "" proxy.setdefault("answer1",ls) await TextСonditions.start_answer.set() async def test_text(message: types.Message, state: FSMContext): await message.answer(message.text) async with state.proxy() as data: data['answer1'] += f"\n{message.text}" await message.answer(f"Text: {data['answer1']}") async def TextInFSM(message: types.Message, state: FSMContext): main_text = await state.get_data() print(main_text)#выводит {} await message.answer(main_text) def handler_client(db : Dispatcher): dp.register_message_handler(Text_in,commands=["start"],state=None) dp.register_message_handler(test_text,state=TextСonditions.start_answer) dp.register_message_handler(TextInFSM,state=TextСonditions.first_answer) вот

Алекс- Автор вопроса
Komronbek F
Что ты хотел сделать?

у меня первый стейт ловит текст и сохраняет его но в конце нужно ввести доп текст отдельно чтобы он не поймал текст и не сохранил в первый использую другой стейт

Алекс
у меня первый стейт ловит текст и сохраняет его но...

Использовуй другой ключ, у юзера, одна память

Алекс- Автор вопроса
Komronbek F
Использовуй другой ключ, у юзера, одна память

а как не ловить текст в первый ключ

Алекс- Автор вопроса
Komronbek F
Ловить в другой

как ? )))))) он же ловит весь текст что ему скинуть и как он поймет какой нужно сохранить и в этот момент завершить

Алекс
как ? )))))) он же ловит весь текст что ему скинут...

Дружище, я выше написал в чем у тебя проблема...

Алекс
как ? )))))) он же ловит весь текст что ему скинут...

Это уже логика, от тебя зависит, подумай

Алекс- Автор вопроса
b
Дружище, я выше написал в чем у тебя проблема...

with state.proxy читай значение data[ключ] так тоже делал

Алекс
with state.proxy читай значение data[ключ] так тож...

Ну иначе и не нужно. Проблема в чем именно? В том что выводит пустую строку, правильно?

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта