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

yipeiwu_com7年前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内置函数bin() oct()等实现进制转换

使用Python内置函数:bin()、oct()、int()、hex()可实现进制转换。 先看Python官方文档中对这几个内置函数的描述: bin(x) Convert an inte...

简单介绍Python的Django框架的dj-scaffold项目

由于Django没有象rails一样指定项目的目录结构规范,很多人都对django项目的目录结构要如何组织而感到困惑。为此我又新创建了一个开源项目dj-scaffold(django的脚...

Python模拟浏览器上传文件脚本的方法(Multipart/form-data格式)

http协议本身的原始方法不支持multipart/form-data请求,这个请求由原始方法演变而来的。 multipart/form-data的基础方法是post,也就是说是由pos...

python3学生名片管理v2.0版

python3学生名片管理v2.0版

python学生名片管理vv2.0是在1.0的基础上增加部分功能,实现将数据存入文件保存,以便于程序停止后还能再次取到数据。具体实现请看如下部分: card_main.py impo...

跟老齐学Python之画圈还不简单吗?

跟老齐学Python之画圈还不简单吗?

在python中,循环有一个语句:for语句。 简单的for循环例子 >>> hello = "world" >>> for i in hello...