我正在尝试从特定的user_id查询我的模型中的类Survey的列名。但是在尝试这样做时我遇到了错误。 这就是我在做的事情:
>>> q = Survey.objects.filter(user=1)
>>> q.name
Traceback (most recent call last):
File "<console>", line 1, in <module>
AttributeError: 'QuerySet' object has no attribute 'name'
这是我的模特:
class Survey(models.Model):
name = models.CharField(max_length=400)
description = models.TextField()
user = models.ForeignKey(User, related_name="user_survey_set")
def __unicode__ (self):
return (self.name)
def questions(self):
if self.pk:
return Question.objects.filter(survey=self.pk)
else:
return None
def user_data(self):
p = self.user
return p.name
答案 0 :(得分:1)
QuerySet.filter
返回QuerySet
个对象,而不是特定的Model实例。要获取特定模型实例,请使用QuerySet.get
方法:
>>> survey = Survey.objects.get(user=1)
>>> survey.name