例1:

class UserInfo(models.Model):
nickname = models.CharField(max_length=32)
username = models.CharField(max_length=32)
password = models.CharField(max_length=64) gender_choices = (
(1,‘男‘),
(2,‘女‘),
)
gender = models.IntegerField(choices=gender_choices)
ralated_query_name 
class U2U(models.Model):
g = models.ForeignKey(‘UserInfo‘,ralated_query_name=‘a‘)
b = models.ForeignKey(‘UserInfo‘,ralated_query_name=‘b‘) # ralated_query_name # obj.对象男.b_set.all()
# obj.对象女.a_set.all()
ralated_name
class U2U(models.Model):
g = models.ForeignKey(‘UserInfo‘,ralated_name=‘a‘)
b = models.ForeignKey(‘UserInfo‘,ralated_name=‘b‘) # ralated_name # obj.对象男.b.all()
# obj.对象女.a.all()

例2:

反向查找

class UserType(models.Model):
title = models.CharField(max_length=32) class User(models.Model):
username = models.CharField(max_length=32)
ut = models.ForeignKey(‘UserType‘,related_name=‘xxx‘) ## related_name=‘xxx‘
反向:小写表名user_set ===>xxx
## related_query_name = ‘xxx‘
反向:user_set==>xxx_set

推荐使用

ut = models.ForeignKey(‘UserType‘,related_name=‘users‘)

related_name和related_query_name举例区别的更多相关文章

  1. django : related_name and related_query_name

    This post is about two Django ForeignKey parameters related_name related_query_name See an example b ...

  2. python自动化开发-[第二十二天]-bbs多级评论、点赞、上传文件

    今日概要: 1.related_name和related_query_name的区别 2.through_fields的用途 3.django的事务提交 4.点赞的动画效果 5.多级评论的原理 6.上 ...

  3. python中copy与deepcopy的区别

    目录 区别 python代码举例 区别 高级语言中变量是对内存及其地址的抽象 copy.copy(object), 拷贝的是内嵌套结构的地址引用,当前到结构发生变化的时候,浅拷贝也相应的改变. cop ...

  4. 用阻塞队列实现一个生产者消费者模型?synchronized和lock有什么区别?

    多线程当中的阻塞队列 主要实现类有 ArrayBlockingQueue是一个基于数组结构的有界阻塞队列,此队列按FIFO原则对元素进行排序 LinkedBlockingQueue是一个基于链表结构的 ...

  5. Django 1.10 中文文档------3.2.1 模型Models

    3.2.1 models模型 通常一个模型映射一张单独的数据表. 基本概念: 每个model都是django.db.models.Model的子类 model的每个属性代表数据表的某一列 Django ...

  6. jango 模型管理数据model,数据库外键主键与一对一,一对多,多对多关系

    四.models.py 定义和管理模型: 4.1模型class的属性就映射与数据库的字段参数 继承models.Model class TestClass(models.Model): 4.2在数据库 ...

  7. Django学习之四:Django Model模块

    目录 Django Model 模型 MODEL需要在脑子里记住的基础概念 区分清楚,必须不能混淆的 class Meta 内嵌元数据定义类 简单model创建实例 数据源配置 接着通过models在 ...

  8. Django之ORM操作

    Django之ORM操作 前言 Django框架功能齐全自带数据库操作功能,本文主要介绍Django的ORM框架 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计 ...

  9. Django 重写用户模型

    AUTH_USER_MODEL = 'myapp.MyUser' django——重写用户模型 Django内建的User模型可能不适合某些类型的项目.例如,在某些网站上使用邮件地址而不是用户名作为身 ...

随机推荐

  1. grep 使用

    如果需要搜索含空格的字符串,加双引号 | grep "cd /tmp" 参考链接 1.grep 后加单引号.双引号和不加引号的区别

  2. Hystrix 学习使用

    说明: 每次调用创建一个新的HystrixCommand,把依赖调用封装在run()方法中 执行execute()/queue做同步或异步调用 请求接收后,会先看是否存在缓存数据,如果存在,则不会继续 ...

  3. ubuntu-docker入门到放弃(八)创建支持SSH服务的镜像

    我们知道进入docker容器可以使用attach.exec等命令来操作和管理,但是如果需要远程登录并管理容器,就需要ssh服务的支持了. 1.基于commit命令创建 docker提供了commit命 ...

  4. Ubuntu16.04下安装OpenCV2.4.13

    软件版本 Ubuntu 16.04; OpenCV 2.4.13 安装步骤 1.首先安装一些编译工具 # 安装编译工具 sudo apt-get install build-essential # 安 ...

  5. 20165312 2017-2018-2 《JAVA程序设计》第4周学习总结

    一.课本五六章知识点总结 1.第五章 继承是一种由已有的类创建新类的机制 子类继承父类的成员变量和方法 子类继承的方法只能操作子类继承和隐藏的成员变量 子类重写或新增的方法只能操作子类继承和新声明的成 ...

  6. Numpy学习笔记(一)

    (1)NumPy的核心对象 ndarray  用于表示N 维数组类型.它描述相同类型的元素集合. 可以使用基于零的索引访问集合中的项目. (2)Ndarray的创建 可以使用numpy.array() ...

  7. jquery中live is not a function的问题

    jquery中的live()方法在jquery1.9及以上的版本中已被废弃了,如果使用,会抛出TypeError: $(...).live is not a function错误. 解决方法: 之前的 ...

  8. 堆排序(Heapsort)

    class Program { static void Main(string[] args) { , , , , , ,}; int size = arr.Length; Heapsort(arr, ...

  9. android 开发 View _5_ Paint详解

    转载:http://blog.csdn.net/abcdef314159 //Paint的setStyle,Style共有3种 setStyle(Style style) Paint.Style.FI ...

  10. Java 身份证号码验证

    身份证号码验证 1.号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码 2.地址码(前 ...