代码详解django中数据库设置


Posted in Python onJanuary 28, 2019

首先定义数据库的表名和字段

启动mysql数据库 bash mysql.server start

安装pymysql pip install pymysql

PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。

在_init_.py文件中加入如下代码:

import pymysql
pymysql.install_as_MySQLdb()

新建数据库

mysql -u root -p 登录root
show databases 显示数据库
create database mysite 创建数据库

settings.py配置数据库:

1)django默认使用的是sqlite数据库
2)修改settings.py文件的DATABASES选项进行数据库的配置
3)设置想要使用的数据库。比如mysql

DATABASES = {
'default': {
  'ENGINE': 'django.db.backends.mysql',
  'NAME': 'mysite',
  'USER': 'root',
  'PASSWORD': '12345678',
  'HOST': 'localhost',
  'PORT': '3306',
}
}

创建app

一个项目中可以创建多个app
使用命令 python manage.py startapp myApp,后生成myApp目录以及相关文件。
admin.py 站点配置
models.py 定义模型
views.py 定义视图

激活app

1)在settings.py文件中将app名称myApp应用加入到INSTALLED_APPS

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myApp',
]

2)定义模型,一个数据库表对应一个模型。

在models.py中加入类似如下:

class Grades(models.Model):

gname = models.CharField(max_length=20)
gdate = models.DateTimeField()
ggirlnum = models.IntegerField()
gboynum = models.IntegerField()
isDelete = models.BooleanField(default=False)

ps:不用定义主键,后面会自动生成。

3)在数据库中生存数据库表

python manage.py makemigrations
python manage.py migrate

这样在数据库中即生成了与models对应的数据库表,但是表的内容是空的。

Python 相关文章推荐
python装饰器decorator介绍
Nov 21 Python
浅谈Python peewee 使用经验
Oct 20 Python
浅谈Scrapy框架普通反爬虫机制的应对策略
Dec 28 Python
深入理解Python 关于supper 的 用法和原理
Feb 28 Python
python编写暴力破解zip文档程序的实例讲解
Apr 24 Python
对python实时得到鼠标位置的示例讲解
Oct 14 Python
python+opencv像素的加减和加权操作的实现
Jul 14 Python
详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件
Aug 23 Python
wxpython绘制圆角窗体
Nov 18 Python
pandas创建DataFrame的7种方法小结
Jun 14 Python
Python魔术方法专题
Jun 19 Python
Pytorch学习之torch用法----比较操作(Comparison Ops)
Jun 28 Python
Python控制键盘鼠标pynput的详细用法
Jan 28 #Python
用python 实现在不确定行数情况下多行输入方法
Jan 28 #Python
对python3中, print横向输出的方法详解
Jan 28 #Python
Python删除n行后的其他行方法
Jan 28 #Python
python 在指定范围内随机生成不重复的n个数实例
Jan 28 #Python
Python实现统计英文文章词频的方法分析
Jan 28 #Python
Python3实现统计单词表中每个字母出现频率的方法示例
Jan 28 #Python
You might like
10个可以简化php开发过程的MySQL工具
2010/04/11 PHP
PHP实现求连续子数组最大和问题2种解决方法
2017/12/26 PHP
仅Firefox中链接A无法实现模拟点击以触发其默认行为
2011/07/31 Javascript
jquery ajax 同步异步的执行 return值不能取得的解决方案
2012/01/08 Javascript
Javascript实现检测客户端类型代码封包
2015/12/03 Javascript
Bootstrap实现弹性搜索框
2016/07/11 Javascript
bootstrap table实例详解
2017/01/06 Javascript
JS简单获取日期相差天数的方法
2017/04/24 Javascript
javascript过滤数组重复元素的实现方法
2017/05/03 Javascript
详解nodeJS之二进制buffer对象
2017/06/03 NodeJs
vue component组件使用方法详解
2017/07/14 Javascript
浅谈React中组件间抽象
2018/01/27 Javascript
es6 symbol的实现方法示例
2019/04/02 Javascript
理理Vue细节(推荐)
2019/04/16 Javascript
vue实现多组关键词对应高亮显示功能
2019/07/25 Javascript
JS事件流与事件处理程序实例分析
2019/08/16 Javascript
微信小程序背景音乐开发详解
2019/12/12 Javascript
js实现简单的倒计时
2021/01/28 Javascript
react项目从新建到部署的实现示例
2021/02/19 Javascript
Python 异常处理实例详解
2014/03/12 Python
python执行外部程序的常用方法小结
2015/03/21 Python
Python实现字典排序、按照list中字典的某个key排序的方法示例
2018/12/18 Python
python利用Tesseract识别验证码的方法示例
2019/01/21 Python
pyqt 实现在Widgets中显示图片和文字的方法
2019/06/13 Python
Python面向对象魔法方法和单例模块代码实例
2020/03/25 Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
2020/10/10 Python
html5中audio支持音频格式的解决方法
2018/08/24 HTML / CSS
全球最大的服务市场:Fiverr
2017/01/03 全球购物
Lululemon加拿大官网:加拿大知名体育服装零售商
2019/04/12 全球购物
请解释在new与override的区别
2012/10/29 面试题
应付会计岗位职责
2013/12/12 职场文书
给面试官的感谢信
2014/02/01 职场文书
知识竞赛主持词
2014/03/26 职场文书
团拜会策划方案
2014/06/07 职场文书
求职自荐信怎么写
2015/03/04 职场文书
2015年酒店服务员工作总结
2015/05/18 职场文书