返回渲染时pylint(undefined-variable)和对象没有属性错误

时间:2019-07-23 15:58:16

标签: django django-views django-urls

我正在一个简单的项目中,每个模型上都有外键。该程序运行良好,直到我尝试将获取的数据呈现到模板上为止。

当我尝试获取一个简单的HttpResponse时,效果很好,但是渲染到模板上却出现了错误。

我收到一个错误,指出Undefined variable 'required' pylint(undefined-variable)

我的代码如下:

from django.shortcuts import render, redirect
from .models import master_courses, course_category, course_series


    def single_slug(requests, single_slug):
        categories = [c.course_slug for c in course_category.objects.all()]
        if single_slug in categories:
        matching_series = course_series.objects.filter(course_category__course_slug=single_slug)

            series_urls = {}
            for ms in matching_series.all():
                part_one = master_courses.objects.filter(course_series__course_series=ms.course_series).earliest("date_added") 

                series_urls[ms] = part_one

            return render(request, "main/category.html", {"the_series": series_urls})

错误指向代码的最后一行,即:

return render(request, "main/category.html", {"the_series": series_urls})

它说 undefined variable 'request' pylint(undefined-variable)

除了上面提到的for loop中的该语句外,其他return语句也可以正常工作。

请问我如何解决此问题的任何建议?

1 个答案:

答案 0 :(得分:1)

我认为问题在于您将single_slug的第一个参数设置为请求,而不是请求,这是您在渲染后在底部调用的内容。

from django.shortcuts import render, redirect
from .models import master_courses, course_category, course_series


    def single_slug(request, single_slug):
        categories = [c.course_slug for c in course_category.objects.all()]
        if single_slug in categories:
        matching_series = course_series.objects.filter(course_category__course_slug=single_slug)

            series_urls = {}
            for ms in matching_series.all():
                part_one = master_courses.objects.filter(course_series__course_series=ms.course_series).earliest("date_added") 

                series_urls[ms] = part_one

            return render(request, "main/category.html", {"the_series": series_urls})

像上面那样尝试。

相关问题