gpt4 book ai didi

html - Django 如何使 HTML 页面上的条件正确 - 搜索栏

转载 作者:行者123 更新时间:2023-12-04 07:16:13 25 4
gpt4 key购买 nike

我尝试做一个搜索引擎,如果我创建的数据库中的单词然后在 HTML 页面上显示该单词,如果不是,则什么都没有。互联网并没有找到答案我敢肯定我爱上了一些愚蠢的事情。
这是 View

def Search_word(request):
search = request.POST.get("search") #Grab the search item
return render(request,"search_page.html", {"search":search})
这是 html:
{%for i in Word.English_word%}
{%if 在 Word.English_word 中搜索%}
{{搜索}}
{%万一%}
{%endfor%}
和网址:
    path("Search_page",views.Search_word ,name="Search-page"),
楷模:
class Words(models.Model):
English_word = models.CharField(max_length=30)
Hebrew_word = models.CharField(max_length=30)
How_To_Remember = models.CharField(max_length=40)
Name = models.CharField(max_length=20)
pub_date = models.DateTimeField()
问题是,即使这个词是有效的,它也不会向我显示任何东西..

最佳答案

您应该在 View 中实现过滤逻辑,而不是在模板中。模板用于呈现逻辑,而不是业务逻辑。此外,应该使用数据库进行过滤,因为数据库旨在执行此操作。
因此, View 如下所示:

def Search_word(request):
search = request.POST.get('search')
items = Word.objects.filter(English_word__contains=search)
return render(
request,
'search_page.html',
{'search': search, 'items': items}
)
然后在模板中我们用以下方法渲染它:
{% for item in items %}
{{ item.English_word }}: {{ item.Hebrew_word }} <br>
{% endfor %}
您可以用作查找 __contains检查是否 English_word有一个等于 search 的子串, 与 __icontains你检查不区分大小写,用 __iexact您要找的 Word s 匹配 search不区分大小写,最后你可以用 Engish_word=search 过滤精确匹配。

关于html - Django 如何使 HTML 页面上的条件正确 - 搜索栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68742184/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com