Advertisement
gray_beard

1views + 2 querysets + фильтр через get

Feb 8th, 2022
1,259
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.68 KB | None | 0 0
  1. ================views.py=======================
  2. class AdsList(ListView):
  3.     model = Ads
  4.     template_name = 'main/ad_list.html'
  5.     context_object_name = 'ads'
  6.     paginate_by = 5
  7.     extra_context = {'all_tags': Tag.objects.all()}
  8.  
  9.     def get_queryset(self):
  10.         tag = self.request.GET.get('tag')
  11.         if tag is None:
  12.             return Ads.objects.all()
  13.         return Ads.objects.filter(tags__name=tag)
  14. ================urls.py=========================
  15. path('ads/', views.AdsList.as_view(), name='ads'),
  16. ================template========================
  17. {% for tag in all_tags %}
  18.     <a href="?tag={{ tag.name }}" class="list-group-item">{{ tag.name }} </a>
  19. {% endfor %}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement