在 class 中调用相同 class 的实例

Calling an instance of same class inside class

我在 Django 中有一个名为 Student 的模型,我想要一个 student 变量是与他们成为朋友的其他学生。例如:

Tim.friends_set.all() = 吉姆、鲍勃、山姆

我的 _____ 在此代码中是什么?有没有办法在不创建新模型的情况下做到这一点?

class Student(models.Model):
    name = models.CharField(max_length=128, unique=True)
    friends = models.________(Student, blank = True)

我想象如果我创建一个新模型它会是这样的:

class friends(models.Model):
    student = models.ForeignKey(Student)
    friends = models.models.ManyToManyField(Student, blank = True)

使用带有参数 'self'ManyToManyField

class Student(models.Model):
  name = models.CharField(max_length=128, unique=True)
  friends = models.ManyToManyField('self', blank = True)

关系是否symmetrical不妨考虑一下。