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中运行了这个命令,但是什么都没有。

所以任何帮助都是最好的。


当前回答

安装Django pylint:

pip install pylint-django

ctrl+shift+p >首选项:配置语言特定设置> Python

设置。适用于python语言的Json应该如下所示:

{
    "python.linting.pylintArgs": [
        "--load-plugins=pylint_django"
    ],

    "[python]": {

    }
}

其他回答

把你的绒线改为- flake8,问题就会消失。

只需在你的问题表中添加objects = None。这为我解决了错误。

首先,使用pip安装pylint-django,如下所示:

pip install pylint-django

转到设置。Json查找并确保python linting enabled为true 是这样的:

在底部写上“python.linting”。pylintPath": "pylint_django":

OR,

进入设置,搜索python linting

确保Python > Linting: Pylint Enabled被选中

在Python > Linting: Pylint路径下写入pylint_django

只是补充一下@Mallory-Erik说的话: 你可以把objects = models.Manager()放在情态句中:

class Question(models.Model):
    # ...
    def was_published_recently(self):
        return self.pub_date >= timezone.now() - datetime.timedelta(days=1)
    # ...
    def __str__(self):
        return self.question_text
    question_text = models.CharField(max_length = 200)
    pub_date = models.DateTimeField('date published')
    objects = models.Manager()

如果你使用python 3

python3 -m pip install pylint-django

如果python < 3

python -m pip install pylint-django==0.11.1

注意:版本2.0,需要pylint >= 2.0,不再支持Python 2 !(https://pypi.org/project/pylint-django/)