Python “模型”对象没有属性“id”
我正在Django中创建一个项目,但遇到了问题,我试图获取数据库中对象的ID,但当我运行它时,该对象似乎没有ID。以下是我的模型:Python “模型”对象没有属性“id”,python,django,Python,Django,我正在Django中创建一个项目,但遇到了问题,我试图获取数据库中对象的ID,但当我运行它时,该对象似乎没有ID。以下是我的模型: from __future__ import unicode_literals from django.db import models class film(models.Model): filmName = models.CharField(primary_key=True, max_length=120) quot
from __future__ import unicode_literals
from django.db import models
class film(models.Model):
filmName = models.CharField(primary_key=True, max_length=120)
quotient = models.FloatField()
rating = models.FloatField()
gross = models.IntegerField()
star = models.CharField(max_length=120)
releaseDate = models.DateField()
def __unicode__(self):
return self.filmName
在我看来:
objects = film.objects.filter(filmName__startswith=letter)
for object in objects:
print object.id
我收到一个错误,说id不存在,我不知道为什么你明确告诉Django filmName是主键,所以没有单独的id
不过,这样做通常不是一个好主意。您明确告诉Django filmName是主键,因此没有单独的ID
不过,这样做通常不是个好主意。啊,好的,谢谢你的回复,所以如果我将filmName更改为just unique=true,应该可以吗?如果我这样做,我还必须重置数据库吗?是的,而且可能;您可能可以通过迁移来管理它,但最好从零开始。我尝试运行迁移,但它似乎把数据库搞砸了,我该如何从零开始?您使用的是sqlite吗?如果是这样的话,只需删除db.sqlite3文件,以及migrations目录的内容。啊,好的,谢谢你的回复,那么如果我将filmName更改为just unique=true,应该可以吗?如果我这样做,我还必须重置数据库吗?是的,而且可能;您可能可以通过迁移来管理它,但最好从零开始。我尝试运行迁移,但它似乎把数据库搞砸了,我该如何从零开始?您使用的是sqlite吗?如果是这样,只需删除db.sqlite3文件,以及migrations目录的内容。