【问题标题】:How to make a field in django model that is either a value or a foreign key?如何在 django 模型中创建一个值或外键的字段?
【发布时间】:2020-06-19 22:51:53
【问题描述】:

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

这些是我的模型


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”,则只需保存该值。

谁能帮助我? 提前致谢

【问题讨论】:

    标签: django django-models django-rest-framework


    【解决方案1】:

    您可以为高度和宽度字段设置与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)
    

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

    【讨论】:

      猜你喜欢
      • 2016-03-13
      • 1970-01-01
      • 2012-05-20
      • 2019-02-13
      • 2021-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-30
      相关资源
      最近更新 更多