使用以下字段考虑以下模型:
权力:
class Power(models.Model):
...
half = models.BooleanField()
micro = models.BooleanField()
使用P :
class UseP(models.Model):
...
power_policy = models.ForeignKey(Power,on_delete=models.CASCADE)
def use_types():
TYPES = []
TYPES.append(("F","Full Use"))
if power_policy.half:
TYPES.append(("H","Half Use"))
if power_policy.micro:
TYPES.append(("M","micro Use"))
return tuple(TYPES)
use_type = models.CharField(max_length=1,choices=use_types())
该功能未运行。如您所见,当我尝试不使用“自我”参数时,它表示未定义power_policy
。如果我像self.power_policy
那样做,它会识别电源策略,但是当我得到并调用像use_type = models.CharField(max_length=1,choices=self.use_types())
这样的函数时,它说self
关键字未在此行中定义。 / p>
我认为代码说明了所有内容,但是如果不想,我希望在用户选择Power之后根据用户的电源选项为他们提供选择。为此,我创建了一个函数,但实际上似乎没有用。我在做错什么,还是不可能这样?
感谢您的时间,