
28.07.2022, 22:56
|
|
Участник форума
Регистрация: 13.02.2019
Сообщений: 183
С нами:
3815624
Репутация:
83
|
|
Сообщение от laiser
Всем привет, у меня опять проблема.
Есть функция, которая принимает ид и нужный текст, а возвращает уже переведенный текст.
Python:
Код:
async
def
return_txt
(
user_id
,
text
)
:
user_info
=
await
get_userx
(
user_id
)
new_text
=
await
get_textx
(
)
return
new_text
[
f'{text}{user_info["user_lang"]}'
]
Но я не знаю как сделать, чтобы бот реагировал на данный текст, хотелось бы что-то типо такого:
Python:
Код:
@dp.message_handler
(
text
=
await
return_txt
(
message
.
from_user
.
id
,
'but1'
)
)
Ну или так:
Python:
Код:
@dp.message_handler
(
lambda
msg
:
msg
.
text
==
await
return_txt
(
msg
.
from_user
.
id
,
'but1_'
)
)
Но там нет ассинхронности, и я не знаю что делать(
Ты не сделаешь мультиязычность таким образом, ты или пишешь свою мидлварь для перевода, или используешь готовые решения - I18n
Самый хреновый вариант - захардкодить все переводы в фильтры при регистрации руками
|
|
|