从Django中的几个文本框(模板)中检索信息

时间:2018-02-08 18:00:28

标签: django django-templates

**我想从课程标题中获取信息&课程代码文本框,,,,如果标题&代码都给出或只显示标题/代码数据。 Bt,在我的代码中仅在给出标题时不起作用.. 什么是逻辑错误.. ??我的观点代码

def search_view(request):
c = 0
d = 0
c_title = ''
c_code = ''
course_Details = ''
course_Details1 = ''
if request.GET.get('Code'):
    c_code = request.GET.get("Code")
if request.GET.get('Course_Title'):
    c_title = request.GET.get("Course_Title")
if c_code != '':
    course_Details = Course.objects.filter(course_code=c_code)
    if (course_Details):
        c = 1
if c_title != '':
    if c == 1:
        course_Details1 = course_Details.filter(course_title=c_title)
        if (course_Details1):
            d = 1
    if d == 1:
        course_Details = course_Details1

    if d == 0:
        course_Details = Course.objects.filter(course_title=c_title)
if c == 1 | d == 1:
    return render(request, 'index.html', {'course_Details': course_Details})
else:
    return render(request, 'index.html')

1 个答案:

答案 0 :(得分:0)

当您按标题查询时,您需要设置d = 1:

def search_view(request):
    c = 0
    d = 0
    c_title = ''
    c_code = ''
    course_Details = ''
    course_Details1 = ''
    if request.GET.get('Code'):
        c_code = request.GET.get("Code")
    if request.GET.get('Course_Title'):
        c_title = request.GET.get("Course_Title")
    if c_code != '':
        course_Details = Course.objects.filter(course_code=c_code)
        if (course_Details):
            c = 1
    if c_title != '':
        if c == 1:
            course_Details1 = course_Details.filter(course_title=c_title)
            if (course_Details1):
                d = 1
        if d == 1:
            course_Details = course_Details1

        if d == 0:
            course_Details = Course.objects.filter(course_title=c_title)
            d = 1
    if c == 1 | d == 1:
        return render(request, 'index.html', {'course_Details': course_Details})
    else:
        return render(request, 'index.html')