问题描述
我希望工人能够监督其他工人。工人不需要主管。他们无法监督自己。 (我不在乎循环)
我不确定最 django 标准的方法来解决这个问题。我可以创建一个自定义的 setter 函数,但我注意到模型仍然有 supervisor
和 supervisor_id
,它们可以直接写入,绕过了我现有的要求。
这是我所拥有的,但它告诉我“AttributeError: 'ForeignKey' 对象没有属性 'setter'”
class Worker(models.Model):
supervisor = models.ForeignKey(Worker,blank=True,null=True,on_delete=models.CASCADE)
@supervisor.setter
def assign_supervisor(self,s_id):
if s_id == self.id:
raise Error("can't supervise yourself!")
self.supervisor_id = s_id
self.save()
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)