Skip to content

Commit

Permalink
add custom root view per view and clean code
Browse files Browse the repository at this point in the history
  • Loading branch information
girardinsamuel committed Sep 27, 2020
1 parent c9b13f6 commit cddf3aa
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 11 deletions.
7 changes: 3 additions & 4 deletions app/http/controllers/InertiaController.py
Original file line number Diff line number Diff line change
Expand Up @@ -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})
Expand All @@ -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"
)
17 changes: 17 additions & 0 deletions resources/templates/spa_view_2.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="csrf-token" content="{{ csrf_token }}" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
<title>Inertia SPA</title>
<!-- {{ routes() }} -->
</head>

<body>
<header>This view uses an other root view !</header>
{{ inertia(page) }}
<script src="/static/js/app.js"></script>
</body>
</html>
4 changes: 4 additions & 0 deletions src/masonite/inertia/core/InertiaResponse.py
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down
12 changes: 5 additions & 7 deletions tests/test_controller.py
Original file line number Diff line number Diff line change
Expand Up @@ -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()
# response = view.response
# request = view.request
pass

0 comments on commit cddf3aa

Please sign in to comment.