File tree Expand file tree Collapse file tree 2 files changed +16
-0
lines changed
Expand file tree Collapse file tree 2 files changed +16
-0
lines changed Original file line number Diff line number Diff line change 3030 views .PageDetailView .as_view (),
3131 name = "page-detail" ,
3232 ),
33+ path (
34+ "<slug:language>/search_pages/" ,
35+ views .PageSearchView .as_view (),
36+ name = "page-search" ,
37+ ),
3338 path (
3439 "<slug:language>/placeholders/<int:content_type_id>/<int:object_id>/<str:slot>/" ,
3540 views .PlaceholderDetailView .as_view (),
Original file line number Diff line number Diff line change @@ -135,6 +135,17 @@ def get_queryset(self):
135135 raise NotFound ()
136136
137137
138+ class PageSearchView (PageListView ):
139+ def get (self , request , language : str | None = None ) -> Response :
140+ self .search_term = request .GET .get ("q" , "" )
141+ self .language = language
142+ return super ().get (request )
143+
144+ def get_queryset (self ):
145+ qs = Page .objects .search (self .search_term , language = self .language , current_site_only = False ).on_site (self .site )
146+ return PageContent .objects .filter (page__in = qs ).distinct ()
147+
148+
138149class PageTreeListView (BaseAPIView ):
139150 permission_classes = [IsAllowedPublicLanguage ]
140151 serializer_class = PageMetaSerializer
You can’t perform that action at this time.
0 commit comments