Ошибка при запуске приложения flet
Запускаю код, и выходит ошибка:
Exception in thread Thread-7 (info):
Traceback (most recent call last):
File "D:\Python310\lib\threading.py", line 1016, in _bootstrap_inner
self.run()
File "D:\Python310\lib\threading.py", line 953, in run
self._target(*self._args, **self._kwargs)
File "C:\Users\Admin\desktop\jangame\main.py", line 14, in info
page.add(
File "D:\Python310\lib\site-packages\flet_core\page.py", line 315, in add
r = self.__update(self)
File "D:\Python310\lib\site-packages\flet_core\page.py", line 431, in __update
commands, added_controls, removed_controls = self.__prepare_update(*controls)
File "D:\Python310\lib\site-packages\flet_core\page.py", line 456, in __prepare_update
control.build_update_commands(
File "D:\Python310\lib\site-packages\flet_core\control.py", line 411, in build_update_commands
ctrl.build_update_commands(
File "D:\Python310\lib\site-packages\flet_core\control.py", line 423, in build_update_commands
innerCmds = ctrl._build_add_commands(
File "D:\Python310\lib\site-packages\flet_core\control.py", line 469, in _build_add_commands
command = self._build_command(False)
File "D:\Python310\lib\site-packages\flet_core\control.py", line 496, in _build_command
self._before_build_command()
File "D:\Python310\lib\site-packages\flet_core\container.py", line 210, in _before_build_command
self._set_attr_json("alignment", self.__alignment)
File "D:\Python310\lib\site-packages\flet_core\control.py", line 144, in _set_attr_json
nv = self._convert_attr_json(value)
File "D:\Python310\lib\site-packages\flet_core\control.py", line 150, in _convert_attr_json
json.dumps(value, cls=EmbedJsonEncoder, separators=(",", ":"))
File "D:\Python310\lib\json\__init__.py", line 238, in dumps
**kw).encode(obj)
File "D:\Python310\lib\site-packages\flet_core\embed_json_encoder.py", line 43, in encode
return super().encode(self._convert_enums(o))
File "D:\Python310\lib\json\encoder.py", line 199, in encode
chunks = self.iterencode(o, _one_shot=True)
File "D:\Python310\lib\json\encoder.py", line 257, in iterencode
return _iterencode(o, 0)
File "D:\Python310\lib\site-packages\flet_core\embed_json_encoder.py", line 40, in default
return self._convert_enums(obj.__dict__)
AttributeError: 'mappingproxy' object has no attribute '__dict__'. Did you mean: '__dir__'?
Код:
from flet import *
button_style = ButtonStyle(shape=RoundedRectangleBorder(radius=10))
center = MainAxisAlignment.CENTER
def main(page: Page):
page.title = 'App'
page.vertical_alignment = center
page.horizontal_alignment = center
page.window_width = 400
page.window_height = 700
def info(e):
page.add( #ошибка здесь
Container(Column(
[
Text(value='Информация не добавлена', size=30),
Container(Column([ElevatedButton(text='Назад', scale=2, height=40, width=150, style=button_style)]),alignment=alignment.bottom_right)
]), alignment=center))
def start(e=None):
#код "start"
if page.route == '/':
info() #для отладки сделал сразу info, а не start
page.update()
app(target=main)
Пробовал добавлять табуляции, переводить на новую строку, убирать части из контейнера, но не помогает. Единственное спасение - полностью удалить весь код из info. В чем проблема?