Как создать самореферентное поле «многие ко многим» в peewee?

Я использую peewee Python ORM в первый раз (Postgresql с модулем Playhouse), и я хочу сделать следующее: class Person(BaseModel): followers = ManyToManyField(rel_model=Person, related_name='following') Но я получаю ошибку NameError, потому что Person не определен, когда я пытаюсь использовать его в качестве аргумента. Есть ли простой способ сделать то, что я хочу, с помощью ManyToManyField, или мне просто нужно создать отдельную соединительную таблицу, как если бы функция ManyToManyField не существовала?


person Russell    schedule 19.12.2017    source источник


Ответы (1)


Вы захотите сделать что-то вроде этого:

class Person(Model):
    name = TextField()

class Follower(Model):
    from_person = ForeignKeyField(Person, related_name='followers')
    to_person = ForeignKeyField(Person, related_name='followed_by')
person coleifer    schedule 19.12.2017