django orm 通过related_name反向查询的方法

yipeiwu_com6年前Python基础

如下所示:

class level(models.Model):
 l_name = models.CharField(max_length=50,verbose_name="等级名称")
 def __str__(self):
  return self.l_name
 
 
class userinfo(models.Model):
 u_name = models.CharField(max_length=50,verbose_name="用户名称")
 u_level = models.ForeignKey(level,related_name="lev")
 
 def __str__(self):
  return self.u_name

如上表模型,从用户信息查询用户等级为正向查询,从等级查询用户信息为反向查询。

正向查询:

userinfo.object.get(pk=1).u_level

反向查询:

level.objects.get(pk=1).lev.all()

以上这篇django orm 通过related_name反向查询的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python正则表达式经典入门教程

本文实例总结了Python正则表达式基本用法。分享给大家供大家参考,具体如下: 正则表达式在平时做文本处理(爬虫程序去解析html中的字段,在分析log文件的时候需要抓取一些关键数据)的...

Django用户认证系统 组与权限解析

Django的权限系统很简单,它可以赋予users或groups中的users以权限。 Django admin后台就使用了该权限系统,不过也可以用到你自己的代码中。 User对象具有两...

Python实现动态添加属性和方法操作示例

本文实例讲述了Python实现动态添加属性和方法操作。分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #!python3 class Person()...

Python随机生成身份证号码及校验功能

GitHub : https://github.com/jayknoxqu/id-number-util 身份组成方式 中华人民共和国国家标准GB 11643-1999《公民身份号码》中...

Python处理RSS、ATOM模块FEEDPARSER介绍

由于Google reader的关闭,这段时间接触rss的东西相对多很多。试过qq的reader,不怎么样,阅读速度没有,是否阅读的标记也没有。其他网站的不想用,又要多注册账户。 找到p...