首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django学习-第七讲:django常用字段、字段属性,和表关系、操作

django中是有时区概念,使用时要考虑到时区问题,默认使用是 UTC时区,分为 navie(没时区) 和 aware(有时区),如果项目不是国际,可以我们将时区关闭,使用本地时间。...和表关系 在MySQL中,表有两种引擎,一种是InnoDB,另外一种是myisam。如果使用是InnoDB引擎,是支持约束存在使得ORM框架在处理表关系时候异常强大。...因此这里我们首先来介绍下Django使用。 类定义为class ForeignKey(to,on_delete,**options)。...因此在底层,Django为Article表添加了一个属性名_id字段(比如author字段名称是author_id),这个字段是一个,记录着对应作者主键。...即只要这条数据引用了那条数据,那么就不能删除外那条数据。 3.SET_NULL:设置为空。如果那条数据被删除了,那么在本条数据上就将这个字段设置为空。

3.9K30

django在开发中取消约束实现

# 在setting设置 'OPTIONS': { "init_command": "SET foreign_key_checks = 0;", } 补充知识:django-给关系传值...,删除外关系 反查: 在表关系里 related_name = ‘反查name’,自己不设置,django也会默认设置为class小写名字+_set , ex: book_set....''' 两种方法 教室ClassRoom和教室编号ClassNumber 字段在django类里名(room_number)在数据库名(room_number_id) '''      # 一.1...(数据库字段名字room_number_id)值,将相对应值直接赋值给该字段      class_number = ClassNumber.object.get("id=1").room_number...s.teacher.remove(x) return HttpResponse("ojbk") 以上这篇django实现在开发中取消约束就是小编分享给大家全部内容了,希望能给大家一个参考。

3.6K10
您找到你想要的搜索结果了吗?
是的
没有找到

python Django 反向访问器冲突解决

我有两个继承一个基类Django模型: – Request – Inquiry – Analysis 请求有两个到内置用户模型。...“Analysis.assign_user”反向访问器与“Inquiry.assign_user”反向访问器冲突。...我读过所有内容说,设置related_name应该防止冲突,但我仍然得到相同错误。任何人都能想到为什么会发生这种情况?谢谢!...)s_requests_created’) 补充知识:django related_name禁用反向映射 官方文档处理办法: ?...直接将related_name赋值为加号或以加号结尾字符串,即可实现禁用反向映射 以上这篇python Django 反向访问器冲突解决就是小编分享给大家全部内容了,希望能给大家一个参考。

1.4K10

django模型中有关系表删除相关设置

0904自我总结 django模型中有关系表删除相关设置 一.一对一 例如有Author、AuthorDetail两表 author = models.OneToOneField(to='Author...db_constraint=False, on_delete=models.CASCADE ) 1)关系字段放在AuthorDetail表中:作者删除详情删除,详情删除作者保留 2)作者找详情用 ...related_name(detail),详情找作者用 字段(author) 3)db_constraint断开表关联,on_delete规定逻辑关联删除动作,models.CASCADE级联删除...):出版社删除书不动,书删除没有任何影响 2)出版社找书用 related_name(books),书找出版社 字段(publish) 3)db_constraint断开表关联,on_delete...,反向找 字段related_name 3)db_constraint断开表关联,on_delete不存在(不设置,本质在第三张表中设置,且一定是级联)

3K20

Django(ForeignKey)操作以及related_name作用

之前已经写过一篇关于Django文章,但是当时并没有介绍如何根据对数据操作,也就是如何通过主表查询子表或者通过子表查询主表信息 首先我定义了两个模型,一个是老师模型,一个是学生模型,...首先我们先查询到老师信息,在这里我们使用python shell 进行演示 ,输入命令python manage.py shell 进入python shell操作界面: 第一步需要做自然还是需要将我们模型导入进来...,并获取老师相关信息 返回一个teacher对象,接下来就是查询teacher相关联学生对象,在这里有一个需要注意点,django默认情况下每一个主表对象都有一个是属性,可以通过它查询到所有关于子表信息...migrate 从上图可以看到和之前_set操作效果是一样,这两个方法是相同,所以如果觉得比较麻烦的话,可以在定义主表时候,直接就给定义好名称使用related_name...上面的查询主要是通过主表查询子表信息 下面说一下如何通过子表查询主表相关信息,也就是查询一个学生所对应老师信息 首先需要先获取一个子表对象,那么就可以通过定义时候那个字段名获取关于主表信息了

1.9K10

django序列化时使用真实值操作

展示: 一般情况下序列化得到内容只是id: ... { fields: { uat_date: "2015-07-25", statu: "CG", name: "慢赢优化",...方法: 我序列化是Content表,它含有一个关联是Module表,1对多 我要先序列化Module表,然后序列化Content表时候才可以使用到Module真实值 class ModuleManager...actual_key,要保证先序列化,如下依赖: class Content(models.Model): name = models.CharField(max_length=100) ......原生序列化serialize解析 在写接口时候,大家都离不开对query结果集序列化 嗯嗯嗯,一般我们都有DRF里面的序列化工具,但是django原生serialize你们有 用过吗??????...,这种方法并不常用 在有特定需要时候,使用这种django原生序列化,还是十分方便

1.8K10

数据工厂平台-番:vue和django冲突问题

最近有很多同学反馈说第四节 没跟住, 页面显示并不是: 而是: 博主帮忙一个一个解决排查问题后,发现这个问题原因似乎好多人都不清楚。...好,原因基本就上述三种,这里我说下 为什么要这么写: 在我学习vue文档时候,都是用一个页面单独去学习,没有在django项目中,所有文档都成功跟下来了,很顺利。...但是后来我放入到django时候,发现了一个问题: 就是这样写法 会导致,标签元素text 不能显示。...后来我搜索一番得知: django和vue 在这个上面有个小冲突, 就是在标签中级夹着{{ }} 会冲突,会被django误以为是要从后台直接获取数据,而不是从下面的vuebom中拿数据,所以搜索得知...所以之后 这样就可以在django url路径下 正常显示了。但是此时 无法通过直接在浏览器打开网页方法显示了。 但是没关系,反正我们正常就是通过url: home路由进入

60830

深入mysql关联问题详解--Java学习网

今儿继续再看老师给推荐深入浅出mysql数据库开发这本书,看到innodb数据库关联问题时,遇到了一个问题,书上写是可以对父表进行修改,从而同步到子表上去,可是自己实验却是没有能够。...city`, CONSTRAINT `city_ibfk_1` FOREIGN KEY (`country_id`) REFERENCES `country` (`country_id`)) 上面的问题是说因为有关联存在...然后自己又重新看了下书本,发现自己sql语句中没有innodb约束方式(cascade,set null,no action,restrict),感觉这就是自己出问题地方。...网上说法是:字段类型和索引 这里是重新建立一张表icity,结果可以了,总结可能是因为字段类型问题,可是我alter问题还是没有解决呢: 代码如下: mysql> create...,做法先drop掉表里,然后在add。

1K40

Django 2.2文档系列】Model on_delete参数用法

场景 我们用DjangoModel时,有时候需要关联。关联时,参数:on_delete几个配置选项到底是干嘛呢,你知道吗? 参数介绍 models.CASCADE 级联删除。...Django会模拟SQL约束行为,在删除此条数据时,同事删除外关联对象。...比如:用户有一个关联是用户健康记录表,当用户删除时,配置了这个参数健康记录表中跟这个用户有关数据也会被删除。...当数据被删除时,被关联内容被设置为null。 models.SET_DEFAULT 将值设置为默认值。必须设置有默认值 。...models.SET()将SET()设置值作为值 ,如果传递了callable,则调用它结果。 DO_NOTHING不采取行动。

1.9K10

Django——ContentType(与多个表建立关系)及ContentType-signals使用

可以看到,我们通过model_class就可以获取对应类。也就是说,今后,我们如果自己定义model如果有关联到這个ContentType上,我们就能找到对应model名称。...对于新鲜事这个功能来说就是使用GenericRelation来产生一个特殊,它不像models.ForeignKey那样,必须指定一个Model来作为它指向对象。...怎么从这张操作记录表中得到相应操作model呢,这就得用到fields.GenericForeignKey,它是一个特殊,可以指向任何Model实例,在这里就可以通过这个字段来指向类似Post...是再给上面的表增加一个,然后重新修改数据库么?显然是不能,一旦数据库被创建了,我们几乎很少再去修改数据,如果再给其添加额外字段,无疑会带来不必要麻烦。...总之,如果一个表与其他表有多个关系,我们可以通过ContentType来解决这种关联。

4.3K20

用Python一批量将任意结构CSV文件导入 SQLite 数据库。

用Python一批量将任意结构CSV文件导入MySQL数据库。” 本文是上篇姊妹篇,只不过是把数据库换成了 Python 自带SQLite3。...上一篇介绍是一批量导入 MySQL 数据库,这一篇介绍是一批量导入 SQLite3 数据库,两者代码 90% 相同。所以本文重点介绍不同之处。 先看一下程序运行效果: ?...以上就是一批量将任意结构CSV文件导入SQLite数据库与MySQL数据库代码主要不同点。如果您还没有看过上一篇文章,强烈建议去看一下!上篇文章代码实现思路方面讲解更详细:“ 收藏!...用Python一批量将任意结构CSV文件导入MySQL数据库。”...我们可以将上文自动导入生成数据库 csv.db 添加到 SQLiteStudio 中,可以很方便查看到数据库中有哪些表,以及表结构和数据。见下图: ?

5.3K10

盘点一个dbeaver导入csv文件到sql server报错一个问题

一、前言 前几天在Python最强王者交流群【金光灿灿】问了一个dbeaver导入csv文件到sql server报错一个问题问题如下:我在使用dbeaver导入csv文件到sql server时一直出现...,你检查下两个方式导入到表是同一个表不,而且字段类型是不是设置一样。...【粉丝】:刚刚还试了一下,同样是通过dbeaver导入导入到sqlite数据库里面就完全没有问题。 这个你要在导入数据前,是否有设置字段类型,如果有,检查下是否是你想要。...后来粉丝自己发了一些导入截图,【隔壁山楂】发现了问题所在。 两次导入数据类型不一致,所以导致结果不同。 确实非常细节,所以下次遇到类似的,也能够解决了。 顺利地解决了粉丝问题。...这篇文章主要盘点了一个dbeaver导入csv文件到sql server报错问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题

23410

Django中基表创建、字段属性简介、脏数据概念、子序列化

如两张表建立了一对一字段,在A表,那么先往B表写数据就更合理。...假设图书管理系统中书、出版社、作者、作者详细信息四张表之间关系如下: """ 表关系 1)Book 和 Publish 一对多:在多一方 Book 2)Book 和 Author 多对多:在查询频率高一方...更合理) """ Django orm中外字段属性详解 在建表之前我们对外字段属性进行了解: 1)related_name在外中设置反向查询字段名:正向找字段名,反向找related_name...,作者详情一定没有 DO_NOTHING:不会被级联,假设A表依赖B表,B记录删除,A表字段不做任何处理 例子:作者被删了,作者书还存在,书还是该作者写;出版社没了,出版社出版书还在...,将两张表设置为级联,并将反向查询字段名设置为detail 数据库中脏数据介绍 数据库中常见并发操作所带来了一致性问题包括:丢失修改,不可重复读,读“脏”数据,幻读。

4.3K30

基于python电影推荐系统毕业设计_MovieRecommend

花了很久才成功把csv导入进mysql表中ratings:  mysql->CREATE TABLE ratings(userId INT NOT NULL,movieId INT NOT NULL...所以不能加enclosed by '"'这句,否则csv进mysql表时会中断。  ...4/14  今天做很少,主要都去看深度学习视频了,为以后研究生项目扫盲。  主要还是csv和Mysql问题,不知道要怎么去遍历里面的数据。...然后将算法导入pycharm,并且实现了可以将mysql数据表导出为csv文件。  现在Mysql表是user_resulttable,同csv文件,csv文件导出到static下。...4/28  有个最大问题,现在imdbId和poster对应表不完整,很多推荐出来ImdbId号找不到电影海报。  必须要解决这个问题,而且最好增加title。

5.3K00

使用pythonDjango库开发一个简单数据可视化网站(三)- 使用Django连接数据库mysql

这节课我们主要讲解是使用Django框架连接数据库mysql,收到后台私信朋友说让我简单说一下Django框架,这里先为大家简单介绍一下Django框架。...Django遵循MVC设计模式框架,MVC是Model、View、Controller三个单词简写,分别代表模型、视图、控制器。...,这就是Django ORM数据对象映射优势。...(三)将数据导入mysql 这里我准备了一段代码,运行这段代码可以将数据导入数据库。...(六)最终效果 这就是数据库中所有的数据和查询数据后返回结果。 好了,就到这里了,大家有什么问题可以后台私聊我。非常感谢。

1.3K30

后端框架学习-Django

一对一映射 创建一对一: 语法:OneToOneField(类名, on_delete=xxx(级联删除:在存在前提下删除规则)) on_delete: models.CASCADE:级联删除...创建一对一数据 无模型类,和之前相同 有模型类: wife = Wife.objects.create(name=’王夫人’,author = author1(类属性名称绑实例...)) wife = Wife.objects.create(name=’王夫人’,author_id = 1(类属性字段绑值)) 一对一查询 正向查询:从查对象 反向查询:从对象查 调用反向属性查询到关联一方...一对多查询 核心:正向属性(authors)和反向属性(book_set) 在多表上设置,关联一表。...无模型类,和之前相同 有模型类: 类似上面 wife = Wife.objects.create(name=’王夫人’,author = author1(类属性名称绑实例)

9.3K40

DataSet导入三个坑

1 是一个常见保证数据库内容完整性一种方式。当然现在出于性能考虑,在互联网企业中比较少甚至禁止使用。...在DBRider中,提供了以下相关功能 1)@DataSet注解中disableConstraints属性 这个属性如果为true,则可以暂时去除外约束,以便于数据导入操作。...,如果存在外的话,经常会发生因为不存在导致数据无法导入问题。...,除了因为约束不满足导致无法导入问题之外,另外一种常见问题是主键冲突,或者更确切一点说是某个带有自增ID序列带来冲突。...其次是在数据导入问题,DBUnit一个著名bug是在导入XML、CSV格式文件时,如果待导入文件第一条记录Nullable列数据正好是Null,那么DBUnit会忽略该列,整列数据都会被丢失

1.1K10
领券