首页 > 解决方案 > 如何在 django 模型中创建一个值或外键的字段?

问题描述

我不知道这是否可能,也许我必须想出一个特定的设计,但我正在努力解决以下问题:

这些是我的模型


class Rectangle(models.Model):
    height = models.CharField(max_length=255)
    width = models.CharField(max_length=255)

class Variable(models.Model):
    name = models.CharField(max_length=255)
    value = models.CharField(max_length=255)

我希望宽度和高度是一个值,或者是一个具有该值的变量。例如,如果用户输入一个以特殊字符开头的高度,例如“@variablename”,它应该能够找到并引用该变量,否则如果输入为“350”,则只需保存该值。

谁能帮我?提前致谢

标签: djangodjango-modelsdjango-rest-framework

解决方案


Vairable您可以为高度和宽度字段设置与模型的关系。

class Rectangle(models.Model):
    height = models.Foreignkey(Variable,on_delete=#SET_NULL,CASCADE vs what you want)
    width = models.Foreignkey(Variable,on_delete=#SET_NULL,CASCADE vs what you want)

如果用户给出一个特殊的值名称,您可以找到并将您的字段与变量对象连接起来。其他的,如果用户只给出值,您可以创建任何变量对象并将其连接到相关字段。


推荐阅读