Как запустить эти приложения на платформе FletPython

Программы на Python
Anonymous
Как запустить эти приложения на платформе Flet

Сообщение Anonymous »

Описать
Привет ребята, хочу создать что-то вроде паттерна для создания приложений на Flet. И я столкнулся с проблемой.
Структура проекта
├───приложение │ ├───утилиты | | └-----handler.py │ ├───просмотров | | └-----test_view.py | └---app.py ├───второе_приложение │ ├───утилиты | | └-----handler.py │ ├───просмотров | | └-----test_view.py | └--- Second_app.py └---main.py Это предварительная структура шаблона Идея в том, что приложений будет несколько, например для входа в систему, основное приложение и так далее, как в django. В каждом приложении есть папки utils, views, main_app.py
. Утилиты
В папке utils, конечно же, утилиты и различные вспомогательные инструменты. Пример обработчика событий

набрав import TYPE_CHECKING если TYPE_CHECKING: из приложения импорта app.app Обработчик класса: def __init__(self, _app: App) -> Нет: self.app = _app self.app.button.on_click = лямбда _: self.button_click() def button_click(self) -> Нет: print("Нажата кнопка приложения") Просмотры На 'представлениях' наши представления с уже написанным кодом, который нам нужно отобразить Пример:

из флета импорта View, Text, ElevatedButton класс TestView(Просмотр): защита __init__(сам): self.route = "/тест" self.button = ElevatedButton("click_me") self.controls = [Text("Протестированный вид", size=20, color="black"), self.button] main_app.py из страницы импорта флета, TemplateRoute, RouteChangeEvent, ElevatedButton из app.views.test_view импортировать TestView классное приложение: def __init__(self, страница: Страница): self.page = страница self.test_view = TestView() self.views = {self.test_view.route: self.test_view} self.page.on_route_change = self.route_change defroute_change(self, _e: RouteChangeEvent) -> Нет: template_route = TemplateRoute(self.page.route) self.page.views.clear() для маршрута просмотрите в self.views.items(): если template_route.match(self.page.route): self.page.views.append(просмотр) перерыв @свойство кнопка def (self) -> ElevatedButton: вернуть self.test_view.button И что-то подобное на втором этапе применения
main.py
Этот файл должен быть чем-то вроде «подключающего» файла, который объединит все приложения и запустит приложение Flet
Проблема
Раньше я запускал только одно приложение, и код файла main.py был таким

импортировать флет в формате футов из приложения импорта app.app из Second_app. Second_app импортировать SecondApp защита основной(): ft.app(цель=Приложение) если __name__ == "__main__": основной() И теперь, когда мне нужно запустить еще два приложения, как мне это реализовать?

Или есть хорошие решения
Основная идея
Идея состоит в том, чтобы использовать шаблон MVT на Flet, как на django

Как запустить этот проект, как проект django, но на Flet

Вернуться в «Python»