From cddf3aa75615c79cd417d65b4a7123d2d2bee6c7 Mon Sep 17 00:00:00 2001 From: Samuel Girardin Date: Sun, 27 Sep 2020 20:13:06 +0200 Subject: [PATCH] add custom root view per view and clean code --- app/http/controllers/InertiaController.py | 7 +++---- resources/templates/spa_view_2.html | 17 +++++++++++++++++ src/masonite/inertia/core/InertiaResponse.py | 4 ++++ tests/test_controller.py | 12 +++++------- 4 files changed, 29 insertions(+), 11 deletions(-) create mode 100644 resources/templates/spa_view_2.html diff --git a/app/http/controllers/InertiaController.py b/app/http/controllers/InertiaController.py index 99c9265..9cf9618 100644 --- a/app/http/controllers/InertiaController.py +++ b/app/http/controllers/InertiaController.py @@ -13,9 +13,6 @@ def show(self, view: View): def inertia(self, view: InertiaResponse): def lazy_prop(): - import pdb - - pdb.set_trace() return "6" return view.render("Index", {"user": "Sam", "lazy": lazy_prop}) @@ -25,4 +22,6 @@ def inertia_with_error(self, view: InertiaResponse, request: Request): return request.redirect("/") def helloworld(self, view: InertiaResponse): - return view.render("HelloWorld", {"first_name": "Sam"}) + return view.render("HelloWorld", {"first_name": "Sam"}).with_root_view( + "spa_view_2" + ) diff --git a/resources/templates/spa_view_2.html b/resources/templates/spa_view_2.html new file mode 100644 index 0000000..b3400ff --- /dev/null +++ b/resources/templates/spa_view_2.html @@ -0,0 +1,17 @@ + + + + + + + + Inertia SPA + + + + +
This view uses an other root view !
+ {{ inertia(page) }} + + + diff --git a/src/masonite/inertia/core/InertiaResponse.py b/src/masonite/inertia/core/InertiaResponse.py index ec74bb6..468fa1c 100644 --- a/src/masonite/inertia/core/InertiaResponse.py +++ b/src/masonite/inertia/core/InertiaResponse.py @@ -31,6 +31,10 @@ def __init__(self, container): def set_root_view(self, root_view): self.root_view = root_view + def with_root_view(self, root_view): + self.root_view = root_view + return self + def _load_routes(self): from routes.web import ROUTES diff --git a/tests/test_controller.py b/tests/test_controller.py index 249e60c..8e0c432 100644 --- a/tests/test_controller.py +++ b/tests/test_controller.py @@ -11,11 +11,9 @@ def setUp(self): def test_test(self): # assert self.get("/app").hasMiddleware("inertia") - view = self.get("/helloworld") - view.request.header("HTTP_X_INERTIA", True) + # view = self.get("/helloworld") + # view.request.header("HTTP_X_INERTIA", True) - response = view.response - request = view.request - import pdb - - pdb.set_trace() \ No newline at end of file + # response = view.response + # request = view.request + pass \ No newline at end of file