Я делаю приложение, подобное клону Twitter, с Django и DRF, среди которых доступны следующие модели.
Reply - это модель, которая определяет отношения родитель-потомок Post.
class Post(models.Model):
tweet = models.CharField(max_length=140, blank=False)
user = models.ForeignKey(
settings.AUTH_USER_MODEL,
on_delete=models.CASCADE
)
created_at = models.DateTimeField(auto_now_add=True)
@property
def children(self):
reply_obj = Reply.objects.filter(parent=self)
children = []
for obj in reply_obj:
children.append(obj)
return children
class Reply(models.Model):
parent = models.ForeignKey(
Post,
related_name='parent_post',
on_delete=models.CASCADE
)
child = models.ForeignKey(
Post,
related_name='child_post',
on_delete=models.CASCADE
)
created_at = models.DateTimeField(auto_now_add=True)
Я хотел бы получить список объектов Post, которые становятся дочерними для этого Post со свойством children
.
Однако, если вы напишите Post.objects.get (id = 1) .children
в View, например, вы можете использовать <django.db.models.fields.related_descriptors.create_reverse_many_to_one_manager. <Locals> .RelatedManager object at 0x10d0395c0>
Возвращено, иЯ не могу получить ожидаемый результат.
Как я могу получить хорошие результаты?