я пытаюсь получить доступ к внешнему ключу в файле flows.py, но сталкиваюсь с ошибкой:
'NoneType' object has no attribute 'approved'
Вот соответствующие части моего кода:
flows.py
class Pipeline(Flow):
process_class = PaymentVoucherProcess
#process starts here
start = flow.Start(
CreateProcessView,
fields=["payment_code", "bPBankAccount"],
task_title="New payment voucher"
).Permission(
auto_create=True
).Next(this.preparer)
preparer = flow.View(
PreparerSignature
).Next(this.check_preparer)
check_preparer = flow.If(
cond=lambda act: act.process.approved_preparer.approved
).Then(this.verifier).Else(this.end)
#there is more to the code but i am leaving it out as it is not relevant
models.py
class PaymentVoucherProcess(Process):
payment_code = models.CharField(max_length=250,default='100-200-121')
bPBankAccount = models.ForeignKey('BPBankAccount', on_delete=models.CASCADE)
approved_preparer = models.ForeignKey('PreparerSignatureModel' , on_delete=models.CASCADE , null=True)
drop_status = models.CharField(
null=True, max_length=3, default=None,
choices=(('SCF', 'Successful'),
('ERR', 'Unsuccessful'))
)
remarks = models.TextField(null=True)
class PreparerSignatureModel(JSignatureFieldsMixin):
name = models.ForeignKey(User,on_delete=models.CASCADE)
approved = models.BooleanField(default=False)
Как видно из кода ошибки, кажется, что я не могу получить доступ к иностранному ключу с помощью:
act.process.approved_preparer.approved
Есть ли способ я могу получить доступ к иностранному ключу в файле flows.py?