我有三个模型用于待办事项应用程序:
class Topic(models.model)
user = models.ForeignKey(UserProfile)
lists = models.ManyToManyField(List)
class List(models.model)
activities = models.ManyToManyField(Activity)
class Activity(models.model)
activity = models.CharField(max_length=250)
这在用户选择主题后选择列表(子分类),显示该列表上的所有活动时是有意义的。但是,如何有效地查询以下内容呢?
- 用户X的所有活动(无论主题或列表) - 用户X的主题X的所有活动(无论列表)
我需要在查询中使用`select_related()`,然后循环遍历相关对象吗?还是有更高效的方法而不需要循环?(或者我应该更改我的模型?)