“Django数据库操作”的版本间的差异

来自个人维基
跳转至: 导航搜索
(以“==ManyToManyField== 用于指定一对多数据关联,如文章和评论: <pre class="prettyprint"> class Article(models.Model): # ... replies = models.M...”为内容创建页面)
 

2017年12月8日 (五) 17:11的最后版本

ManyToManyField

用于指定一对多数据关联,如文章和评论:

class Article(models.Model):
    # ...
    replies = models.ManyToManyField('Reply')
class Reply(models.Model):
    #...

正向查询

已知 Article,获得其评论 replis:

Article.objects.get(id=1).replies.all()
Article.objects.get(id=1).replies.filter(xxx)

反向查询

即由已有 reply获得其所属的 Article:

reply = Reply.objects.get(id=1)
reply.article_set.all()[0]
reply.article_set.get()