ign*_*low 6 python django django-models
为noobish问题道歉,我对Python和Django都是全新的,并试图制作我的第一个应用程序.
我有一个简单的课程
class About(models.Model):
title = models.CharField(max_length=200)
description = models.TextField()
date = models.DateTimeField('date added')
Run Code Online (Sandbox Code Playgroud)
我添加了一条记录.我可以访问它
about = About.objects.filter(id=1)
Run Code Online (Sandbox Code Playgroud)
但是,如果我尝试使用点语法来访问其属性,我会收到以下错误
>>> about.title
Traceback (most recent call last):
File "<console>", line 1, in <module>
AttributeError: 'QuerySet' object has no attribute 'title'
Run Code Online (Sandbox Code Playgroud)
我知道如何在模型中使用unicode来指定更好的返回值,例如
def __unicode__(self):
return self.title
Run Code Online (Sandbox Code Playgroud)
我应该使用它来将模型数据格式化为字典/列表吗?或者我只是完全错过了一些默认行为?
Bla*_*air 11
在您的情况下,about是一个QuerySet对象,而不是您的模型的实例.尝试
print about[0].title
Run Code Online (Sandbox Code Playgroud)
或者,使用get()来检索模型的单个实例:
about = About.objects.get(id=1)
print about.title
Run Code Online (Sandbox Code Playgroud)