在管理员视图中更改Django模型名称索引

时间:2019-07-14 09:19:01

标签: django model

我是否正在尝试访问“ Project”模型类的所有实例 从管理页面或在python shell中我仍然得到 (在pyhon shell或admin中为Project.objects.all():https://ibb.co/S7F491d

<Project: Project object (4)>, <Project: Project object (5)>, <Project: Project object (6)>

但是我想要

<Project: Project object (1)>, <Project: Project object (2)>, <Project: Project object (3)>

索引似乎显示了第i个创建的项目。

class Project(models.Model):
    title = models.CharField(max_length=20)
    description = models.CharField(max_length=200, blank=True)
    image = models.ImageField(null=True)
    data = models.DateField(blank=False, null=10 / 20 / 2009)
    objects = models.Manager()

2 个答案:

答案 0 :(得分:0)

在模型中添加__str__方法。py和实例的标题将显示,而不是对象:

class Project(models.Model):
    title = models.CharField(max_length=20)
    description = models.CharField(max_length=200, blank=True)
    image = models.ImageField(null=True)
    data = models.DateField(blank=False, null=10 / 20 / 2009)
    objects = models.Manager()

    def __str__(self):
         return self.title

答案 1 :(得分:0)

您的模型处理主键,并在每次创建新对象时自动增加id列。

这是一个坏主意,但是,如果您真的想重用已删除的主键,则可以关闭自动增量功能,并自己手动管理主键,但这会导致错误并需要付出一些努力。

主键值本身仅用于ID,而不用于其他任何值。如果您出于某些原因确实需要这样做,this post可以为您提供帮助。