Search

http://127.0.0.1:8000/search/?q=Django

html

        <form action="{% url 'search' %}" class="d-flex" method="GET">
          <input class="form-control me-2" type="text" placeholder="Search" aria-label="Search" name="q">
          <button class="btn btn-outline-success" type="submit">Search</button>
        </form>


views.py


def search(request):
  q=request.GET.get('q')
  posts=Post.objects.filter(
    Q(title__icontains=q) | Q(overview__icontains=q)
  ).distinct()
  param={
    'posts':posts,
    'pop_post':Post.objects.order_by('-read')[:9]
  }
  return render(request,'app/all.html',param)


**2nd Method Search

http://127.0.0.1:8000/search/?search=web+development


        <form method="GET" action="{% url 'search' %}" class="d-flex">
          <input class="form-control me-2" type="search" placeholder="Search" aria-label="Search" name="search"
            id="search">
          <button class="rounded-3" type="submit"><i class="fas fa-search"></i></button>
        </form>



def scarch(request):
  # url thaka Access kor66i
  searchh=request.GET['search']
  if len(searchh)>=10:
    messages.warning(request, 'Plese search less then 10 cheracter')
    product=Product.objects.none()
  else:
    productTitle=Product.objects.filter(title__icontains=searchh)
    productBrand=Product.objects.filter(brand__icontains=searchh)
    productCategory=Product.objects.filter(category__icontains=searchh)
    product = productTitle.union(productBrand, productCategory)

  params={'products':product,'search':searchh}


  return render(request,'app/search.html',params)



{% if messages %}
{% for message in messages %}
<p {% if message.tags %} class="alert alert-{{message.tags}} mb-5" {% endif %}>{{message}}</p>
{% endfor %}
{% endif %}












 

Comments