【发布时间】:2016-08-27 15:59:06
【问题描述】:
我想建立一个网站:
- 有一套 10 张卡片
- 在每张卡片上,都有重要/不重要/未知属性
- 每个用户选择重要和不重要的卡片(从同一组 10 张卡片中)
- 他的选择已保存并与他的帐户相关联。
我想出了这样的模型:
- 用户:我用
django.contrib.auth.models.User -
卡片:
class Card(models.Model): is_important = models.NullBooleanField(default=None) -
卡组:
class CardSet(models.Model): cards = models.ManyToManyField(Card) user = models.ForeignKey(User,related_name='card_set')
对我来说很明显这个数据库关系有问题,因为我不知道如何检索用户实例决定重要/不重要/未知的卡片列表。但是,我不知道如何将它们置于正确的关系中。
【问题讨论】:
-
为此,您需要自定义through table
-
你也可以查询这个
CardSet.objects.filter(user__username='abhishek.garg', cards__is_important=True),你需要阅读链接过滤器,docs.djangoproject.com/en/1.9/topics/db/queries/… -
谢谢 Burhan Khalid 和 abhishekgarg!