2016-04-27 67 views
1

我在Django中创建了一个项目,我遇到了麻烦,我试图获取数据库中对象的ID,但是当我运行它时,对象似乎没有ID。这里是我的模型:'model'object has no attribute'id'

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不存在,我不知道为什么

回答

4

您明确告诉Django的该filmName是主键,所以没有单独的ID。

虽然这通常不是一个好主意。

+0

好的,谢谢你的回复,所以如果我改变filmName为unique = true这应该工作?如果我这样做,我将不得不重置数据库? – user2320239

+0

是的,可能;您可能可以通过迁移来管理它,但可能更好从头开始。 –

+0

我试着运行迁移,它似乎已经搞乱了数据库,我怎么会从头开始? – user2320239

相关问题