def index(request):
latest_question_list = Question.objects.all().order_by('-pub_date')[:5]
template = loader.get_template('polls/index.html')
context = {'latest_question_list':latest_question_list}
return HttpResponse(template.render(context, request))
该函数的第一行在Question.objects.all()上得到一个错误:
类“Question”没有“objects”成员
我正在跟随Django文档教程,它们有相同的代码并正在运行。
我已经尝试调用一个实例。
Question = new Question()
and using MyModel.objects.all()
这个类的models。py代码是这样的。
class Question(models.Model):
question_text = models.CharField(max_length = 200)
pub_date = models.DateTimeField('date published')
def was_published_recently(self):
return self.pub_date >= timezone.now() - datetime.timedelta(days=1)
def __str__(self):
return self.question_text
我仍然有这个错误。
我读过pylint并运行了这个…
pylint --load-plugins pylint_django
这并没有帮助,即使github自述文件说…
防止关于django生成的属性的警告
模型。objects或Views.request。
我在virtualenv中运行了这个命令,但是什么都没有。
所以任何帮助都是最好的。
更新vs code 1.40.0
后做的事情:
$ pip install pylint-django
点击这个链接:https://code.visualstudio.com/docs/python/linting#_default-pylint-rules
注意,让pylint考虑pylint-django的方法是指定:
"python.linting.pylintArgs": ["--load-plugins", "pylint_django"]
在设置中。VS Code的json。
但在此之后,您将注意到许多新的检测错误。然后,看看上面写了什么:
当python.lint . pylintuseminimalcheckers被设置为true(默认值)时,这些参数将被传递。如果你在pylintArgs中指定一个值,或者使用Pylint配置文件(参见下一节),那么pylintUseMinimalCheckers将隐式设置为false。
我所做的就是像链接中描述的那样创建一个.pylintrc文件,然后在文件中配置以下参数(保持文件的其余部分不变):
load-plugins=pylint_django
disable=all
enable=F,E,unreachable,duplicate-key,unnecessary-semicolon,global-variable-not-assigned,unused-variable,binary-op-exception,bad-format-string,anomalous-backslash-in-string,bad-open-mode
现在pylint可以正常工作了。
更新vs code 1.40.0
后做的事情:
$ pip install pylint-django
点击这个链接:https://code.visualstudio.com/docs/python/linting#_default-pylint-rules
注意,让pylint考虑pylint-django的方法是指定:
"python.linting.pylintArgs": ["--load-plugins", "pylint_django"]
在设置中。VS Code的json。
但在此之后,您将注意到许多新的检测错误。然后,看看上面写了什么:
当python.lint . pylintuseminimalcheckers被设置为true(默认值)时,这些参数将被传递。如果你在pylintArgs中指定一个值,或者使用Pylint配置文件(参见下一节),那么pylintUseMinimalCheckers将隐式设置为false。
我所做的就是像链接中描述的那样创建一个.pylintrc文件,然后在文件中配置以下参数(保持文件的其余部分不变):
load-plugins=pylint_django
disable=all
enable=F,E,unreachable,duplicate-key,unnecessary-semicolon,global-variable-not-assigned,unused-variable,binary-op-exception,bad-format-string,anomalous-backslash-in-string,bad-open-mode
现在pylint可以正常工作了。