File tree 4 files changed +45
-0
lines changed
4 files changed +45
-0
lines changed Original file line number Diff line number Diff line change 1
1
from .add import blog_post_add_page
2
+ from .detail import blog_post_detail_page
2
3
from .list import blog_post_list_page
3
4
from .model import BlogPostModel
4
5
from .state import BlogPostState
5
6
6
7
__all__ = [
7
8
'blog_post_add_page' ,
9
+ 'blog_post_detail_page' ,
8
10
'blog_post_list_page' ,
9
11
'BlogPostModel' ,
10
12
'BlogPostState'
Original file line number Diff line number Diff line change
1
+ import reflex as rx
2
+
3
+ from ..ui .base import base_page
4
+
5
+ from . import state
6
+
7
+ # @rx.page(route='/about')
8
+ def blog_post_detail_page () -> rx .Component :
9
+ my_child = rx .vstack (
10
+ rx .heading (state .BlogPostState .post .title , size = "9" ),
11
+ rx .text (
12
+ state .BlogPostState .post .content ,
13
+ ),
14
+ spacing = "5" ,
15
+ align = "center" ,
16
+ min_height = "85vh"
17
+ )
18
+ return base_page (my_child )
Original file line number Diff line number Diff line change @@ -9,6 +9,25 @@ class BlogPostState(rx.State):
9
9
posts : List ['BlogPostModel' ] = []
10
10
post : Optional ['BlogPostModel' ] = None
11
11
12
+ @rx .var
13
+ def blog_post_id (self ):
14
+ return self .router .page .params .get ("blog_id" , "" )
15
+
16
+ def get_post_detail (self ):
17
+ with rx .session () as session :
18
+ if self .blog_post_id == "" :
19
+ self .post = None
20
+ return
21
+ result = session .exec (
22
+ select (BlogPostModel ).where (
23
+ BlogPostModel .id == self .blog_post_id
24
+ )
25
+ ).one_or_none ()
26
+ self .post = result
27
+ # return
28
+
29
+
30
+
12
31
def load_posts (self ):
13
32
with rx .session () as session :
14
33
result = session .exec (
Original file line number Diff line number Diff line change @@ -61,6 +61,12 @@ def index() -> rx.Component:
61
61
route = navigation .routes .BLOG_POST_ADD_ROUTE
62
62
)
63
63
64
+ app .add_page (
65
+ blog .blog_post_detail_page ,
66
+ route = "/blog/[blog_id]" ,
67
+ on_load = blog .BlogPostState .get_post_detail
68
+ )
69
+
64
70
app .add_page (contact .contact_page ,
65
71
route = navigation .routes .CONTACT_US_ROUTE )
66
72
app .add_page (
You can’t perform that action at this time.
0 commit comments