Django管理员编辑整数字段

时间:2018-03-14 11:25:53

标签: python django

我有一个带有两个整数字段的模型,它们应该是外键。在我的管理视图中,这两个字段是可编辑的,但我想在字段旁边显示一个搜索图标,这样我就可以检索另一个模型的id并附加到该字段。 django有这个功能吗?

class Linkage(models.Model):

     user_id = models.IntegerField(default=1)
     parent_id = models.IntegerField(default=0)

1 个答案:

答案 0 :(得分:0)

如果您的模型有两个实际上应该是外键的字段,那么您需要使用ForeignKey代替IntegerField,因此:

from django.db import Models
from app.models import yourModel

class Linkage(models.Model):

     user_id = models.ForeignKey(yourModel)
     parent_id = models.ForeignKey(yourModel)

此Django功能将自动将您的Linkage链接到您选择的其他模型。在管理员中,您将不再需要设置具有外键ID的整数,您只需选择链接模型的实例。

您可以阅读有关Django字段引用here的更多信息。

编辑:按照您设计的模型的方式,可能不会是parent_id,因此您可以将null=True等选项添加到parent_id字段中这样:

parent_id = models.ForeignKey(yourModel, null=True)

我强烈建议你阅读Django文档,这对初学者来说非常好,因为它非常详细和清晰。您可以访问文档here。 他们还有一套教程可以帮助您完成这些步骤,并向您介绍开始使用Django here时需要了解的不同基础知识。