【问题标题】:Using name in dropdown在下拉列表中使用名称
【发布时间】:2021-10-30 18:32:57
【问题描述】:

我想在请求 POST 查询中使用下拉菜单,但我无法定义下拉菜单选项的名称,我该怎么做?是否有机会根据此查询中的 POST 值执行 if else ?

我的前任。查看;

def list(request):
    if 'Storefront' in request.POST:
        filtre=Alarmlar.objects.filter( Ekip__contains="Storefront" )
    elif 'CAC' in request.POST:
        filtre=Alarmlar.objects.filter ( Ekip__contains="Cac")
    else:
        filtre=Alarmlar.objects.all()
    members_list=filtre
    paginator = Paginator(members_list, 100)
    page = request.GET.get('page')
    try:
        members = paginator.page(page)
    except PageNotAnInteger:
        members = paginator.page(1)
    except EmptyPage:
        members = paginator.page(paginator.num_pages)
    return render(request, 'list.html', {'members': members}) 

html;

<select class="form-control" id="adsoyad" name="adsoyad" style="text-align:center" required>
<option value="" disabled selected >Choose...</option>
<option value="all">ALL</option>
<option value="Cac">Cac</option>
<option value="Storefront">Storefront</option>
</select>

【问题讨论】:

    标签: python html django


    【解决方案1】:

    名称是adsoyad,因为您指定了&lt;select name="adsoyad" …&gt;。您因此过滤:

    def list(request):
        data = request.POST.get('adsoyad')
        if data == 'Storefront':
            filtre=Alarmlar.objects.filter( Ekip__contains="Storefront" )
        elif data == 'Cac':
            filtre=Alarmlar.objects.filter ( Ekip__contains="Cac")
        else:
            filtre=Alarmlar.objects.all()
        members_list=filtre
        paginator = Paginator(members_list, 100)
        page = request.GET.get('page')
        try:
            members = paginator.page(page)
        except PageNotAnInteger:
            members = paginator.page(1)
        except EmptyPage:
            members = paginator.page(paginator.num_pages)
        return render(request, 'list.html', {'members': members})

    【讨论】:

    • 我的目的是按选项值过滤列表,但我无法运行查询,因为我无法为 定义名称> 选项。当我为按钮定义名称时,查询运行成功。
    • @altintash: 但是您在 &lt;select&gt; 标记中定义了一个名称,该名称包装了 &lt;option&gt;s,因此该值将与该名称相关联...
    • 我写它实际上是为了表明我想做什么,很抱歉造成误解。不幸的是它不支持
    • @altintash:同样,&lt;option&gt; 没有名称,您在&lt;select&gt; 标记中定义name。这就是您将名称与值相关联的地方:developer.mozilla.org/en-US/docs/Web/HTML/Element/select
    • Ad Soyad 它不是这样工作的,你有什么其他建议可以让我使用选项值和 POST 请求运行吗?
    猜你喜欢
    • 2017-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多