基本上我想做的是:
class A(models.Model):
a_number = models.FloatField()
class B(models.Model):
a = models.ForeignKey(A)
b = models.FloatField(default=self.a.a_number)
我知道在定义变量时不能使用self,但是有解决方法吗?如果“一个数字”是一个方法而不是一个变量呢?你知道吗
我知道我可以在B中做一个这样的方法:
def b(self):
return self.a.a_number
但是在B中创建对象时,我需要得到'a\u number'的正确值,这样就不起作用了。你知道吗
实现clean() method来设置
b
的默认值。你知道吗上面链接的Django文档建议
clean()
自动为字段提供值:在调用模型上的
save()
之前,请记住调用clean()
。如果您使用Django管理站点,那么在该站点上创建或更新对象时会自动调用clean()
。你知道吗相关问题 更多 >
编程相关推荐