Django04: ORM配置与使用MySQL数据库

配置:

1.手动创建数据库。

create database testDB

2. 在Django项目的settings.py文件中,配置数据库连接信息:

DATABASES = {"default": {"ENGINE": "django.db.backends.mysql","NAME": "你的数据库名称",  # 需要自己手动创建数据库"USER": "数据库用户名","PASSWORD": "数据库密码","HOST": "数据库IP","POST": 3306,"CHARSET": 'utf8'}
}

3.在Django项目的__init__.py文件中写如下代码,告诉Django使用pymysql模块连接MySQL数据库: (自带不行或不好用)

import pymysqlpymysql.install_as_MySQLdb()

4.在app->models.py里创建Class,必须继承models.Model。

from django.db import modelsclass Person(models.Model):first_name = models.CharField(max_length=30)last_name = models.CharField(null=False,max_length=30)

5.执行数据库迁移命令:2个命令。<--只要该models里数据库相关code

python manage.py makemigrations  #记录改动
python manage.py migrate         #翻译成MySQL,并执行

注意不要使用 python3 manage.py makemigrations,否则不生效或无反应

6.当没有主键字段,ORM自动创建名为“id” 主键字段。

常用字段

AutoField

int自增列,必须填入参数 primary_key=True。当model中如果没有自增列,则自动会创建一个列名为id的列。

verbose_name

所有字段都有,对字段解释。

IntegerField

一个整数类型,范围在 -2147483648 to 2147483647。

CharField

字符类型,必须提供max_length参数, max_length表示字符长度。

DateField

日期字段,日期格式  YYYY-MM-DD,相当于Python中的datetime.date()实例。

DateTimeField

日期时间字段,格式 YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ],相当于Python中的datetime.datetime()实例。


 

详细见:https://www.cnblogs.com/liwenzhou/p/8688919.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/280886.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

推荐一款 .NET 编写的 嵌入式平台的开源仿真器

Renode 是一个开发框架&#xff0c;通过让你模拟物理硬件系统来加速物联网和嵌入式系统开发。Renode 可以模拟 Cortex-M、RISC-V 等微控制器&#xff0c;不仅可以模拟 CPU指令&#xff0c;还可以模拟外设&#xff0c;甚至可以模拟板载的外设。更强的是&#xff0c;它可以让你在…

Android Bluetooth模块学习笔记

一、蓝牙基础知识 1.蓝牙&#xff08; Bluetooth &#xff09;是一种无线技术标准&#xff0c;可实现固定设备、移动设备和楼宇个人域网之间的短距离数据交换。蓝牙基于设备低成本的收发器芯片&#xff0c;传输距离近、低功耗。 2.微波频段&#xff1a;使用2.402GGHz到2.480GHz…

sql删除无人借阅的书_查找,下载,借阅,租赁和购买电子书的最佳网站

sql删除无人借阅的书So, you’ve got yourself an eBook reader, smartphone, tablet, or other portable device and you want to put some eBooks on it to take with you. There are many options for obtaining free eBooks as well as purchasing, borrowing, or even ren…

django05:ORM示例--person 增删改查

建立数据库连接后&#xff0c;演示代码 见我的资源 https://download.csdn.net/my

C#如何用正则表达式截取https和带端口的域名

如题。现有代码如下。只能截取 http://www.baidu.com的 www.baidu.com当域名为https://www.baidu.com 或者为 http://www.baidu.com:8080 时 则无法正确读取。。求高手给去能截取这样格式的代码 Thanks!string p "http://[^\.]*\.(?<domain>[^\.]*)";Regex r…

推荐一个开源的 .NET 二维码生成库

你好&#xff0c;这里是 Dotnet 工具箱&#xff0c;定期分享 Dotnet 有趣&#xff0c;实用的工具和组件&#xff0c;希望对您有用&#xff01;介绍QrCodeGenerator 是开源的 .NET 二维码生成库&#xff0c;它支持从文本字符串和字节数组生成二维码图片。这个库是基于 .NET Stan…

vue循环中的v-show

v-show如果使用循环对象的属性来时控制, 这个属性必须是加载时就存在的 <div class"list-group col-sm-12" v-for"(issue,index) in issue_list"><a click"switch_comments(issue, index)" style"background-color:#5cb85c;font-w…

C# 图片画矩形,添加文字

1.初始设置字体与笔 Pen pen new Pen(Color.FromArgb(220, Color.Green), 5);Font font new Font("微软雅黑", fontSize, FontStyle.Bold); // 定义字体Brush whiteBrush new SolidBrush(Color.FromArgb(220, Color.Red)); // 画文字用 2.初始设置图片和Graphics …

全量更新和增量更新_增量BIOS更新或直接更新到最新版本哪个更好?

全量更新和增量更新There are few things as irritating as a Blue Screen of Death, but sometimes there is an easy fix for it like updating the BIOS for instance. If multiple updates are available though, do you do incremental updates or can you just use the l…

BZOJ4590: [Shoi2015]自动刷题机

【传送门&#xff1a;BZOJ4590】 简要题意&#xff1a; 有l秒时间&#xff0c;AC了k道题&#xff0c;给出每秒写的代码行数&#xff08;行数>0表示写&#xff0c;<0表示删除&#xff0c;如果剩下的行数不够删&#xff0c;则为0&#xff09;&#xff0c;假设行数>n时能…

[Office 2010 易宝典]什么是Office Web App?如何在线查看Office文档?

什么是Office Web App&#xff1f; Office Web App使得Microsoft Office能扩展到网络浏览器上。用户可以直接在通过浏览器在线查看和编辑保存在网站上的文档。 如何上传Office文档&#xff1f; 在Microsoft Word 2010里面&#xff0c;您可以把Word文档保存到Windows Live SkyDr…

Pipy:保护 Kubernetes 上的应用程序免受 SQL 注入和 XSS 攻击

注入攻击在 OWASP Web 应用 10 大安全风险[1] 排名 2021 年下滑至第 3 位&#xff0c;多年来一直位居前十。SQL 注入 (SQLi) 是一种用于攻击网站和 Web 应用程序的常见注入技术。没有将用户输入与数据库命令完全分开的应用程序面临着将恶意输入作为 SQL 命令执行的风险。成功的…

docker 开启命令\退出容器

开启 docker load -i test.tar docker imagesdocker run -it -p 8000:80 test //8000为访问ip 的端口 80 为test设置的端口 docker rename 原容器名 新容器名访问IP 为 localhost:8000 退出容器 如果要正常退出不关闭容器&#xff0c; 请按CtrlPQ进行退出容器

如何阻止YouTube在iOS,Android和Web上自动播放视频

Over at YouTube, they love it when you watch more YouTube. If you’re sick of YouTube automatically queuing up more videos for you, however, it’s easy enough to turn the autoplay feature off and go back to watching your videos at your own pace. 在YouTube上…

(php)thinkphp3.2配置sql_server

(php)thinkphp3.2配置sql_server 标签&#xff1a; php thinkphp sql_server2016年12月16日 15:20:19631人阅读 评论(0) 收藏 举报分类&#xff1a;php&#xff08;18&#xff09; 最近要整一个crm和erp的对接&#xff0c;最坑的是&#xff0c;erp的是用.net写的&#xff0c;数…

viewData

viewdata[alert]"alert(你好)"<script>viewdata[alert]</script> 在Controller存储数据 在 界面得到 关于 ViewData和ViewMode 点击这里 http://wanshiqian1221.blog.163.com/blog/static/6872130420095242016546/

Blog.Core 第四季度开源更新说明书

B/C/V/PAn open-source organization based on .NET/Core and Vue (React/NG) to quickly build MVC & SPA and microservice application.开源贡献NETCORE架构设计BCVP开发组成员说&#xff1a;BCVP是以Blog.Core为核心框架设计的一整套前后端分离、RBAC与数据鉴权、统一C…

关于HibernateDaoSupport中的getHibernateTemplate().execute及executeFind方法

转自&#xff1a;https://blog.csdn.net/angus_17/article/details/8501668 1. 这两个方法都是为了Spring在接管Hibernate之后&#xff0c;可以对HibernateDaoSupport进行灵活的扩展而用的。 二者的主要区别在于&#xff0c;execute返回的是一个Object&#xff0c;而executeFin…

bootstrap笔记

1.整体排版 <div class"container"><div class"row"><div class"col-md-offset-3 col-md-6"><div class"panel panel-primary"><div class"panel-heading"><h3 class"panel-title&q…

如何将联系人导入Windows联系人文件夹和从中导出联系人

In Windows 7 and 8, there is a Contacts folder in your user directory. This folder can be useful if you have your contacts in a single .vcf file and want to move them into a .csv file for importing into programs like Outlook 2013. 在Windows 7和8中&#xff…