データベースには多くの書籍があります。データベースを検索すると何も返されません(空のクエリセット)。メニューでdjangoで検索機能を実装する方法は?
:
<form name="myform" method="POST" action="{% url 'search' %}">
{% csrf_token %}
<input type="text" name="search" placeholder="Search" />
</form>
views.py、
def search(request):
if request.method == 'POST':
book_name = request.POST.getlist('search')
try:
status = Add_prod.objects.filter(bookname__icontains=book_name)
#Add_prod class contains a column called 'bookname'
except Add_prod.DoesNotExist:
status = None
return render(request,"search.html",{"books":status})
else:
return render(request,"search.html",{})
マイテンプレートファイル、あなたがfor
を使用する必要があるように本があるので
{% if books %}
<a href="{% url 'buy_book' pk=books.pk %}">
<!--Upon successful search book image with hyperlink appears -->
<img src="{{books.image.url}}" alt="No Image"></a>
<p>{{books.bookname}}</p>
<p>Rs.{{books.price}}</p>
{% endif %}
いくつかのユースケースには適していますが、必要に応じてドキュメントベースの検索もご覧ください。 https://docs.djangoproject.com/en/dev/topics/db/search/#document-based-search – keni