refactor DI to attachements

This commit is contained in:
David Rodenkirchen 2024-06-02 17:17:53 +02:00
parent 96b27cf4df
commit e31a5464af
3 changed files with 8 additions and 7 deletions

View File

@ -126,7 +126,7 @@ app = rio.App(
rio.Page( rio.Page(
name="Member", name="Member",
page_url='member', page_url='member',
build=lambda: pages.Member(database_service), build=pages.Member,
), ),
rio.Page( rio.Page(
name="Constitution", name="Constitution",
@ -141,7 +141,7 @@ app = rio.App(
rio.Page( rio.Page(
name="Pics", name="Pics",
page_url='pics', page_url='pics',
build=lambda: pages.Pics(database_service), build=pages.Pics,
), ),
rio.Page( rio.Page(
name="Imprint", name="Imprint",
@ -157,5 +157,6 @@ app = rio.App(
theme=themes[6], theme=themes[6],
icon=from_root("ezgg_website/assets/icons/favicon.png"), icon=from_root("ezgg_website/assets/icons/favicon.png"),
assets_dir=Path(__file__).parent / "assets", assets_dir=Path(__file__).parent / "assets",
on_session_start=on_session_start on_session_start=on_session_start,
default_attachments=[database_service]
) )

View File

@ -12,9 +12,9 @@ from .. import services
class Member(rio.Component): class Member(rio.Component):
database_service: services.DatabaseService database_service: services.DatabaseService
def __init__(self, database_service: services.database_service.DatabaseService) -> None: def __init__(self) -> None:
super().__init__() super().__init__()
self.database_service = database_service self.database_service = self.session[services.DatabaseService]
@rio.event.on_populate @rio.event.on_populate
async def on_populate(self) -> None: async def on_populate(self) -> None:

View File

@ -13,9 +13,9 @@ class Pics(rio.Component):
database_service: services.DatabaseService database_service: services.DatabaseService
active_picture: Optional[rio.URL] active_picture: Optional[rio.URL]
def __init__(self, database_service: services.database_service.DatabaseService) -> None: def __init__(self) -> None:
super().__init__() super().__init__()
self.database_service = database_service self.database_service = self.session[services.DatabaseService]
self.active_picture: Optional[rio.URL] = None self.active_picture: Optional[rio.URL] = None
@rio.event.on_populate @rio.event.on_populate