首页 > 解决方案 > 如何创建从一个表指向同一个表的一对多关系?

问题描述

我有一个以employee_id 作为主键的员工表,其中一些员工是经理,经理也可以有经理。

所以我想在表employees中添加一个manager_id字段,它是员工经理的employee_id。我试图在表和自身之间创建一对多的关系,但没有成功。

在员工类中,我添加了以下内容:

id_manager = models.ForeignKey(employees, on_delete=models.PROTECT)

NameError: name 'employees' is not defined

我对 django 很陌生,知道如何编码吗?

谢谢。

标签: django

解决方案


ForeignKey的文档明确涵盖了这种情况:

要创建递归关系(与自身具有多对一关系的对象),请使用models.ForeignKey('self', on_delete=models.CASCADE).


推荐阅读