博客
关于我
django2.0演示mysql下的一对多增删查改操作
阅读量:143 次
发布时间:2019-02-28

本文共 3264 字,大约阅读时间需要 10 分钟。

本博文源于django基础操作,旨在演示django下orm对mysql一对多关系模型的基础操作。完成本实验前,可参考此博文的基础配置可参考此博文,简单易操作。

里面包含:

  • django运行成功
  • 资源路径配置,链接App,注释csrf的操作

其中资源路径可不配置,外加链接mysql数据库。

DATABASES = {       'default': {           'ENGINE':'django.db.backends.mysql', # 统一规定        'NAME':'test', # 需要自己创建数据库,然后将名字写在上面        'HOST':'127.0.0.1', # 一般为固定套路        'PORT':3306, # 固定套路        'USER':'root', # 自身的user        'PASSWORD':'123456', # 自身的password    }}

下面开始本实验。

实验步骤

  • 在models里码两张表的创建
  • 命令行生成数据库,及迁移文件
  • 命令行下操作mysql数据表,进行增删查改!

models.py创建账户和联系表

from django.db import models# Create your models here.class Account(models.Model):    user_name = models.CharField(max_length=80)    password = models.CharField(max_length= 255)    def __str__(self):        return "Account: %s"%self.user_nameclass Contact(models.Model):    account = models.ForeignKey(        Account,        on_delete=models.CASCADE,    )    mobile = models.CharField(max_length=20)    def __str__(self):        return "%s, %s"%(self.account.user_name,self.mobile)

生成数据库迁移

soft Windows [版本 10.0.18362.145](c) 2019 Microsoft Corporation。保留所有权利。C:\Users\Administrator\Desktop\核心文件\python_file\python尝试\平常练习django\test02(一对多关系)>python manage.py makemigrationsMigrations for 'app01':  app01\migrations\0001_initial.py    - Create model Account    - Create model ContactC:\Users\Administrator\Desktop\核心文件\python_file\python尝试\平常练习django\test02(一对多关系)>python manage.py migrateOperations to perform:  Apply all migrations: admin, app01, auth, contenttypes, sessionsRunning migrations:  Applying contenttypes.0001_initial... OK  Applying auth.0001_initial... OK  Applying admin.0001_initial... OK  Applying admin.0002_logentry_remove_auto_add... OK  Applying admin.0003_logentry_add_action_flag_choices... OK  Applying app01.0001_initial... OK  Applying contenttypes.0002_remove_content_type_name... OK  Applying auth.0002_alter_permission_name_max_length... OK  Applying auth.0003_alter_user_email_max_length... OK  Applying auth.0004_alter_user_username_opts... OK  Applying auth.0005_alter_user_last_login_null... OK  Applying auth.0006_require_contenttypes_0002... OK  Applying auth.0007_alter_validators_add_error_messages... OK  Applying auth.0008_alter_user_username_max_length... OK  Applying auth.0009_alter_user_last_name_max_length... OK  Applying auth.0010_alter_group_name_max_length... OK  Applying auth.0011_update_proxy_permissions... OK  Applying sessions.0001_initial... OK

对数据库进行orm操作

增加两张数据表数据字段操作

In [1]: from app01 import modelsIn [2]: a1 = models.Account.objects.create(user_name='Rose')In [3]: c1 = models.Contact.objects.create(account=a1,mobile='123456')In [4]: c1.saveOut[4]: 
>In [5]: c1.save()In [6]: c2 = models.Contact.objects.create(account=a1,mobile='654321')In [7]: c2.save()In [8]:

查询相关数据表记录(查询c1,c2的信息,过滤信息)

In [8]: c1.accountOut[8]: 
In [9]: print(c1.account)Account: RoseIn [10]: print(c2.account)Account: RoseIn [11]: c3 = models.Contact.objects.filter(pk=1)In [12]: c3Out[12]:
]>

修改Contact数据表记录(将c2的phone修改)

In [13]: c2.mobile = '78910'In [14]: c2.save()In [15]: c2Out[15]: 
In [16]:

删除Account表的相关记录(查看是否级联删除)

In [16]: a1.delete()Out[16]: (3, {   'app01.Contact': 2, 'app01.Account': 1})In [17]: a1.save()In [18]: models.Contact.objects.all()Out[18]: 
In [19]:

转载地址:http://swgd.baihongyu.com/

你可能感兴趣的文章
NIFI大数据进阶_Kafka使用相关说明_实际操作Kafka消费者处理器_来消费kafka数据---大数据之Nifi工作笔记0037
查看>>
NIFI大数据进阶_Kafka使用相关说明_实际操作Kafka生产者---大数据之Nifi工作笔记0036
查看>>
NIFI大数据进阶_NIFI的模板和组的使用-介绍和实际操作_创建组_嵌套组_模板创建下载_导入---大数据之Nifi工作笔记0022
查看>>
NIFI大数据进阶_NIFI监控功能实际操作_Summary查看系统和处理器运行情况_viewDataProvenance查看_---大数据之Nifi工作笔记0026
查看>>
NIFI大数据进阶_NIFI监控的强大功能介绍_处理器面板_进程组面板_summary监控_data_provenance事件源---大数据之Nifi工作笔记0025
查看>>
NIFI大数据进阶_NIFI集群知识点_认识NIFI集群以及集群的组成部分---大数据之Nifi工作笔记0014
查看>>
NIFI大数据进阶_NIFI集群知识点_集群的断开_重连_退役_卸载_总结---大数据之Nifi工作笔记0018
查看>>
NIFI大数据进阶_使用NIFI表达式语言_来获取自定义属性中的数据_NIFI表达式使用体验---大数据之Nifi工作笔记0024
查看>>
NIFI大数据进阶_内嵌ZK模式集群1_搭建过程说明---大数据之Nifi工作笔记0015
查看>>
NIFI大数据进阶_内嵌ZK模式集群2_实际操作搭建NIFI内嵌模式集群---大数据之Nifi工作笔记0016
查看>>
NIFI大数据进阶_外部ZK模式集群1_实际操作搭建NIFI外部ZK模式集群---大数据之Nifi工作笔记0017
查看>>
NIFI大数据进阶_实时同步MySql的数据到Hive中去_可增量同步_实时监控MySql数据库变化_操作方法说明_01---大数据之Nifi工作笔记0033
查看>>
NIFI大数据进阶_实时同步MySql的数据到Hive中去_可增量同步_实时监控MySql数据库变化_操作方法说明_02---大数据之Nifi工作笔记0034
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_01_实际操作---大数据之Nifi工作笔记0029
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_02_实际操作_splitjson处理器_puthdfs处理器_querydatabasetable处理器---大数据之Nifi工作笔记0030
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_说明操作步骤---大数据之Nifi工作笔记0028
查看>>
NIFI大数据进阶_连接与关系_设置数据流负载均衡_设置背压_设置展现弯曲_介绍以及实际操作---大数据之Nifi工作笔记0027
查看>>
NIFI数据库同步_多表_特定表同时同步_实际操作_MySqlToMysql_可推广到其他数据库_Postgresql_Hbase_SqlServer等----大数据之Nifi工作笔记0053
查看>>
NIFI汉化_替换logo_二次开发_Idea编译NIFI最新源码_详细过程记录_全解析_Maven编译NIFI避坑指南001---大数据之Nifi工作笔记0068
查看>>
NIFI汉化_替换logo_二次开发_Idea编译NIFI最新源码_详细过程记录_全解析_Maven编译NIFI避坑指南002---大数据之Nifi工作笔记0069
查看>>