【发布时间】:2013-10-30 07:34:17
【问题描述】:
我正在尝试为用户设置一种“观看”某些项目的方式(即,将项目添加到包含其他用户的其他项目的列表中):
class WatchList(models.Model):
user = models.ForeignKey(User)
class Thing(models.Model):
watchlist = models.ForeignKey(WatchList, null=True, blank=True)
如何将Thing 添加到用户WatchList?
>>> from myapp.models import Thing
>>> z = get_object_or_404(Thing, pk=1)
>>> a = z.watchlist.add(user="SomeUser")
AttributeError: 'NoneType' object has no attribute 'add'
如何将项目添加到关注列表?和/或这是设置我的模型字段的适当方式吗?感谢您的任何想法!
【问题讨论】:
-
我认为您对多线程感到困惑。你会做
= -
为什么不直接与用户相关?还是您想为每个用户创建多个关注列表?
-
如果最终我试图查询以获取特定
User正在监视的所有Things,我应该以不同的方式设置我的模型吗?将ForeignKey 从WatchList放置到Thing,而不是我上面描述的方式会更好吗?最终目标是查询以查找特定用户正在观看的所有内容...
标签: python django views models