码迷,mamicode.com
首页 > 其他好文 > 详细

django中数据查找条件是表中的外键对应表的列该如何查找?

时间:2016-06-22 20:30:07      阅读:380      评论:0      收藏:0      [点我收藏+]

标签:

1 平常查找表中数据的条件是python中已有的数据类型,通过点运算符可以直接查找。如果条件是表中外键列所对应表的某一列,该如何查询数据?比如

class News(models.Model):
    title = models.CharField(max_length=50);
    summary = models.TextField();
    
    url = models.CharField(max_length=150);
    favorCount = models.IntegerField(default=0);
    favorUsername = models.TextField(default="");
    replyCount = models.IntegerField(default=0);

class Reply(models.Model):
    content = models.TextField();
    user = models.ForeignKey(User);
    newID = models.ForeignKey(News);
    replyTime = models.DateTimeField(auto_now_add=True);
    
    def __unicode__(self):
        return self.content;

像这样的数据表,想要查找对于博客id是3的所有回复?

 

方法一、首先获得外键指向的表中对象,然后通过‘_set’这样的方法获得目标表中的数据。

obj = models.News.objects.get(id=3)
replys = obj.reply_set.all()

方法二、直接在目标表中通过双下划线来指定外键对应表中的域来查找符合条件的对象。

models.Reply.objects.filter(newID__id=3)

 

django中数据查找条件是表中的外键对应表的列该如何查找?

标签:

原文地址:http://www.cnblogs.com/zhaopengcheng/p/5608328.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!