【问题标题】:why have we use the inline if else condition in this code how can it filter the element?为什么我们在这段代码中使用内联 if else 条件它如何过滤元素?
【发布时间】:2022-02-05 17:50:22
【问题描述】:

我们在这个 Django 代码中使用了内联 if-else 语句,以及代码中 name__contains 的用途是什么。有人可以用基本的方式回答这个问题吗?最后在 django 代码中 __ 的用途是什么

> def home(request):
>         q = request.GET.get('q') **if request.GET.get('q') != None else ''**
>         rooms = Room.objects.filter(topic__name__contains = q) 
>         topics = Topic.objects.all()
>         context = {'rooms':rooms, 'topics':topics}
>         return render(request,'home.html',context)

【问题讨论】:

    标签: django django-models django-rest-framework django-views django-forms


    【解决方案1】:

    我们在这个 Django 代码中使用了内联 if-else 语句

    q = request.GET.get('q') if request.GET.get('q') != None else ''
    

    它正在检查您是否 q 包含任何值,如果 q 具有值,它将进一步运行否则它将返回 '' 空字符串

    代码中name__contains有什么用

    它将返回与您的查询匹配的值(q) 查看更多关于contains的详细信息

    django代码中__有什么用

    用于访问相关对象

    【讨论】:

    • 感谢您的宝贵回答,请您回答我的另一个问题,为什么我们在 if else 中给出了空字符串
    • 你好@BigyatPokharel 你可以删除其他部分只是出于安全原因,如果你没有从客户端收到任何值,那么你可能不想向用户发送任何信息只是返回空字符串或者是一个用户友好的返回一个错误
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-14
    • 1970-01-01
    • 1970-01-01
    • 2016-08-02
    • 1970-01-01
    • 2014-08-23
    相关资源
    最近更新 更多