django 设置外键的时候,related_name的值大写还是小写,规则怎样
django 设置外键的时候,related_name的值大写还是小写,规则怎样
在Django中,related_name参数用于定义反向关系的名称,即通过外键字段反向查询关联模型的对象。related_name的值是一个字符串,可以是大写也可以是小写,但通常建议使用小写字母,因为它们更符合Python的命名约定(PEP 8)。
具体规则如下:
- 小写字母:通常情况下,建议使用小写字母作为
related_name的值。例如:class Author(models.Model):
name = models.CharField(max_length=100) class Book(models.Model):
title = models.CharField(max_length=100)
author = models.ForeignKey(Author, on_delete=models.CASCADE, related_name='books')在这个示例中,
related_name的值是'books',这使得你可以通过author.books.all()来获取一个作者的所有书籍。 - 大写字母:如果你愿意,也可以使用大写字母作为
related_name的值,但这不是推荐的做法。例如:class Author(models.Model):
name = models.CharField(max_length=100) class Book(models.Model):
title = models.CharField(max_length=100)
author = models.ForeignKey(Author, on_delete=models.CASCADE, related_name='Books')在这个示例中,
related_name的值是'Books',你可以通过author.Books.all()来获取一个作者的所有书籍。然而,这种命名风格在Python中不太常见,通常不建议这样做。总之,虽然
related_name的值不受大小写的强制限制,但在实际开发中,小写字母更符合通用的Python编码惯例。
django 设置外键的时候,related_name的值大写还是小写,规则怎样的更多相关文章
- (转)mysql 无法设置外键的原因总结
在Mysql中创建外键时,经常会遇到问题而失败,这是因为Mysql中还有很多细节需要我们去留意,我自己总结并查阅资料后列出了以下几种常见原因. 1. 两个字段的类型或者大小不严格匹配.例如,如果一个 ...
- 关于mysql设置外键,实现参照性完整性约束,以及workbench上的一个bug(?)
一.本次数据库中有student,course,sc表,其设置情况 -- 创建course表 CREATE TABLE `course` ( `cno` ) NOT NULL, `cname` ) D ...
- navicat如何设置外键
今天上午刚刚弄明白了在navicat for mysql上如何设置外键,现在分享出来,希望能够对大家有帮助. 先介绍一下基本情况.现在有两个表一张是teacher表一张是dept表,现在我想把teac ...
- 如何在MySQL中设置外键约束
引用:http://blog.sina.com.cn/s/blog_53729e4601011wja.html MySql外键设置详解 (1) 外键的使用: 外键的作用,主要有两个: 一个是 ...
- Sqlite 设置外键级联更新
Sqlite 设置外键级联更新 选择好外键表和列以后,勾选更新事件,更新方式设置为CASCADE,即可在外键更新时自动更新
- MySQL设置外键报错 #1452 - Cannot add or update a child row: a foreign key constraint fails 解决方法
MySQL数据库,当我尝试在A表中设置B表的主键为外键时,报出错误:#1452 - Cannot add or update a child row: a foreign key constraint ...
- mysql 设置外键约束时如何删除数据
Mysql中如果表和表之间建立的外键约束,则无法删除表及修改表结构 解决方法是在Mysql中取消外键约束: SET FOREIGN_KEY_CHECKS=0; 然后将原来表的数据导出到sql语句,重新 ...
- mysql 设置外键约束SET FOREIGN_KEY_CHECKS=1
问题描述:Mysql中如果表和表之间建立的外键约束,则无法删除表及修改表结构 解决方法: 在Mysql中取消外键约束: SET FOREIGN_KEY_CHECKS=0; 然后将原来表的数据导出到sq ...
- django ORM 外键详解
Django中的外键: 首先,为了方便理解,我们把使用ForeignKey的字段所在的表定义为从表,把ForeignKey中to参数连接的表称为主表. 外键使用的先决条件: 在mysql数据表中,数据 ...
- django2.0变动数据库设置外键报错
1.报错TypeError: __init__() missing 1 required positional argument: 'on_delete' django2.0以后创建数据库外键的时候必 ...
随机推荐
- 『手撕Vue-CLI』编码规范检查
前言 这篇为什么是编码规范检查呢?因为这是一个很重要的环节,一个好的编码规范可以让代码更加清晰易读,在官方的 VUE-CLI 也是有着很好的编码规范的,所以我也要加入这个环节. 其实不管在哪个项目中, ...
- Linux安装Logstash
Logstash安装 一.上传解压重命名 将Logstash压缩包上传到/home/下解压压缩包并重命名 [root@localhost home] tar -zxf logstash-7.15.0- ...
- 容器的监控:使用cAdvisor,weavescope监控容器
目录 一.系统环境 二.前言 三.容器监控的原理 四.使用docker stats监控容器 五.部署cadvisor监控容器 六.部署weavescope监控容器 一.系统环境 服务器版本 docke ...
- centos7中输入ifconfig 没有IP地址
vmware安装的centos7中没有出现eth0网卡,也没有ip,不能上网,输入ifconfig后如下图 解决办法 1.编辑网卡的配置文件 vi /etc/sysconfig/network-scr ...
- phpstorm配置laravel语法提示
摘自:https://cloud.tencent.com/developer/article/1426699 phpstorm配置laravel语法提示 2019-05-15阅读 1930 用习惯 ...
- 轻松绕过 Graphql 接口爬取有米有数的商品数据
轻松绕过 Graphql 接口爬取有米有数的商品数据 有米有数数据的 API 接口,使用的是一种 API 查询语言 graphql.所有的 API 只有一个入口,具体的操作隐藏在请求数据体里面传输. ...
- jQuery模态框原理
<!-- 引入jQuery.js --> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquer ...
- Linux运维面试总结
1.Linux系统相关日志 /var/log/message:系统信息日志,包含错误信息 /var/log/secure:系统登录日志 /var/log/maillog:邮件日志 /var/log/c ...
- js数据类型的检查
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...
- 程序员面试金典-面试题 02.02. 返回倒数第 k 个节点
题目: 实现一种算法,找出单向链表中倒数第 k 个节点.返回该节点的值. 注意:本题相对原题稍作改动 示例: 输入: 1->2->3->4->5 和 k = 2输出: 4说明: ...