mirror of
https://github.com/wahyd4/links.git
synced 2026-08-09 05:06:16 +10:00
Update search
This commit is contained in:
@@ -19,7 +19,7 @@ class SearchView(ListView):
|
||||
query = self.request.GET.get('q', '').strip()
|
||||
type_filter = self.request.GET.get('type', '')
|
||||
page_num = self.request.GET.get('page', 1)
|
||||
|
||||
|
||||
try:
|
||||
page_num = int(page_num)
|
||||
except (ValueError, TypeError):
|
||||
@@ -33,27 +33,27 @@ class SearchView(ListView):
|
||||
page=page_num,
|
||||
per_page=self.paginate_by
|
||||
)
|
||||
|
||||
|
||||
# Enrich results with actual model data
|
||||
enriched_results = []
|
||||
for result in search_results['results']:
|
||||
enriched_result = self._enrich_result(result)
|
||||
if enriched_result:
|
||||
enriched_results.append(enriched_result)
|
||||
|
||||
|
||||
# Store search metadata for pagination
|
||||
self.search_total = search_results['total']
|
||||
self.search_has_next = search_results['has_next']
|
||||
self.search_has_prev = search_results['has_prev']
|
||||
|
||||
|
||||
return enriched_results
|
||||
return []
|
||||
|
||||
|
||||
def _enrich_result(self, result):
|
||||
"""Fetch full model data for search result"""
|
||||
model_type = result['model_type']
|
||||
model_id = result['model_id']
|
||||
|
||||
|
||||
try:
|
||||
if model_type == 'link':
|
||||
link = Link.objects.get(id=model_id)
|
||||
@@ -120,6 +120,7 @@ def search(request):
|
||||
# Search posts
|
||||
posts = Post.objects.filter(
|
||||
Q(title__icontains=query) |
|
||||
Q(summary__icontains=query) |
|
||||
Q(content__icontains=query)
|
||||
)[:5]
|
||||
results.extend([{
|
||||
|
||||
Reference in New Issue
Block a user