Найти - Пользователи
Полная версия: Конструирование объекта
Начало » Django » Конструирование объекта
1
gomer
Доброго времени суток всем

У меня есть 3 модели:
class Forum(models.Model):
name = models.CharField(maxlength=255)

class Topic(models.Model):
forum = models.ForeignKey(Forum)
subject = models.CharField(maxlength=255)

class Post(models.Model):
topic = models.ForeignKey(Topic)
body = models.TextField()
Мне нужен объект Forum, который будет содержать относящиеся к нему топики и посты

Forum.Topics - список топиков для определенного форума
Forum.Topics.Posts - список постов

Либо написать класс-обертку, либо использовать менеджер?

Или я напрасно все усложняю?
Александр Кошелев
Чуть-чуть меняем исходный код для удобства:
class Forum(models.Model):
name = models.CharField(maxlength=255)

class Topic(models.Model):
forum = models.ForeignKey(Forum, related_name="topics")
subject = models.CharField(maxlength=255)

class Post(models.Model):
topic = models.ForeignKey(Topic, related_name="posts")
body = models.TextField()
и в итоге:
forum = Forum.objects.get(pk=1)

forum.topics.all() # все темы данного форума

topic = forum.topics.all()[0]

topic.posts.all() # все посты данной темы
gomer
Спасибо, то, что нужно!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB