【问题标题】:Django 1.4.5 . Field relationDjango 1.4.5 。场关系
【发布时间】:2014-12-10 19:01:13
【问题描述】:

我是 django 框架的新手。 我有 2 个模型:

class A(models.Model):
    name = models.CharField(...)
    position = models.PositiveSmallIntegerField(...)
    ...

class B(models.Model):
    myfield = ?
    ...

我想与“位置”字段和“我的字段”建立关系(将值从位置复制到我的字段,仅使用此字段)。

我该怎么做?

【问题讨论】:

    标签: python-2.7 django-models django-1.4


    【解决方案1】:

    您必须在类之间创建关系,您可以通过将其他类的 models.OneToOneField 或 models.ForeignKey 字段添加到两个类中的一个来执行此操作,并从一个类访问另一个类,反之亦然,然后在中实现 myField属性形式:

    class A(models.Model):
        name = models.CharField(...)
        position = models.PositiveSmallIntegerField(...)
        ...
    
    class B(models.Model):
        a_obj = models.ForeignKey(A, verbose_name="A instance that related to B instance")
    
        @property
        def myfield(self):
            return self.a_obj.position
        ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-06
      • 1970-01-01
      • 2019-06-26
      • 1970-01-01
      • 1970-01-01
      • 2012-09-06
      • 2011-12-24
      相关资源
      最近更新 更多