Django выводит результат поиска в зависимости от того, какая кнопка отправлена

когда я пытаюсь выполнить поиск из навигационной панели, я хочу, чтобы выполнялся простой запрос на основе input type="submit" и name="searchInput". Когда я отправляю вторую форму со страницы поиска, я хочу, чтобы произошел другой запрос и выдал мне страницу поиска с данными на ней. однако он продолжает перенаправлять меня на главную страницу

def home(request) :

    q = request.GET.get('searchInput') 
    if q!=-1:
        offres = Offre.objects.filter(
            Q(title__icontains=q) |
            Q(user__username__icontains=q) |
            Q(description__icontains=q) |
            Q(wilaya__name__icontains=q)
        )
        context = {
            'offres': offres,
        }
        return render(request,'searchPage.html',context)

    return render(request,'index.html',{})


def is_valid_query_parameter(parameter):

    return (parameter!='' and parameter is not None)



def search(request) :

    if request.GET['submit'] == 'searchInput':
        q = request.GET.get('searchInput') if request.GET.get('searchInput') !=None else ''
        offres  = Offre.objects.filter(
            Q(title__icontains=q)|
            Q(user__username__icontains=q)|
            Q(description__icontains=q)|
            Q(wilaya__name__icontains=q)|
            Q(category__value=q)
        )
        context = {
            'offres':offres,
        }
        return render(request,'searchPage.html',context)

    wilaya = request.GET.get('wilaya')
    hotel = request.GET.get('hotel')
    house = request.GET.get('house')
    land =request.GET.get('land')
    nbedrooms = request.GET.get('bedrooms')
    nbathrooms = request.GET.get('bathrooms')
    minPrice = request.GET.get('minPrice')
    maxPrice = request.GET.get('minPrice')
    wifi = request.GET.get('wifi')
    kitchen = request.GET.get('kitchen')
    furniture  = request.GET.get('furniture')
    # mustInclude = {'wifi' : wifi,
    #                'kitchen' : kitchen,
    #                'furniture' :furniture }
    # excludeList = []
    qs = Offre.objects.all()
    if is_valid_query_parameter(wilaya) :
        qs.filter(wilaya__number = wilaya)
    if not is_valid_query_parameter(hotel) :
        qs.exclude(category__value = 'hotel' )

    if not is_valid_query_parameter(house) :
        qs.exclude(category__value = 'house' )

    if not is_valid_query_parameter(land) :
        qs.exclude(category__value = 'land' )

    if is_valid_query_parameter(nbedrooms):
        qs.filter(numberOfBedrooms = nbedrooms)
    if is_valid_query_parameter(nbathrooms):
        qs.filter(numberOfBathrooms = nbathrooms)

    if is_valid_query_parameter(minPrice) :
        qs.filter(price__gte=minPrice)

    if is_valid_query_parameter(maxPrice):
        qs.filter(price_lte = maxPrice)

    if not(is_valid_query_parameter(wifi) and is_valid_query_parameter(kitchen) and is_valid_query_parameter(furniture)):
        if is_valid_query_parameter(wifi) :
            qs.filter(wifi=True)
        if is_valid_query_parameter(kitchen) :
            qs.filter(kitchen=True)
        if is_valid_query_parameter(furniture) :
            qs.filter(furniture=True)

    return render(request,'searchPage.html',{'offres':qs})

картинка

Вернуться на верх