代码详解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实现根据IP地址和子网掩码算出网段的方法
Jul 30 Python
Python内置函数reversed()用法分析
Mar 20 Python
python中pika模块问题的深入探究
Oct 13 Python
pyqt5利用pyqtDesigner实现登录界面
Mar 28 Python
Django的用户模块与权限系统的示例代码
Jul 24 Python
Pycharm远程调试原理及具体配置详解
Aug 08 Python
在Python中获取操作系统的进程信息
Aug 27 Python
使用Matplotlib 绘制精美的数学图形例子
Dec 13 Python
numpy 矩阵形状调整:拉伸、变成一位数组的实例
Jun 18 Python
python openssl模块安装及用法
Dec 06 Python
python文件路径操作方法总结
Dec 21 Python
python程序实现BTC(比特币)挖矿的完整代码
Jan 20 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
PHP 危险函数解释 分析
2009/04/22 PHP
PHP的关于变量和日期处理的一些面试题目整理
2015/08/10 PHP
php+mysql实现的二级联动菜单效果详解
2016/05/10 PHP
jquery及原生js获取select下拉框选中的值示例
2013/10/25 Javascript
jquery等待效果示例
2014/05/01 Javascript
超实用的JavaScript表单代码段
2016/02/26 Javascript
js严格模式总结(分享)
2016/08/22 Javascript
JQuery控制DIV的选取实现方法
2016/09/18 Javascript
微信小程序开发之map地图实现教程
2017/06/08 Javascript
Bootstrap Table 搜索框和查询功能
2017/11/30 Javascript
webpack-dev-server远程访问配置方法
2018/02/22 Javascript
对vue.js中this.$emit的深入理解
2018/02/23 Javascript
vue实现密码显示隐藏切换功能
2018/02/23 Javascript
基于cropper.js封装vue实现在线图片裁剪组件功能
2018/03/01 Javascript
vue的for循环使用方法
2019/02/12 Javascript
详解javascript设计模式三:代理模式
2019/03/25 Javascript
VUE注册全局组件和局部组件过程解析
2019/10/10 Javascript
[03:55]DOTA2完美大师赛选手传记——LFY.MONET
2017/11/18 DOTA
Python微信公众号开发平台
2018/01/25 Python
python 杀死自身进程的实现方法
2019/07/01 Python
python用for循环求和的方法总结
2019/07/08 Python
Python高级特性 切片 迭代解析
2019/08/23 Python
python解释器spython使用及原理解析
2019/08/24 Python
Python3如何对urllib和urllib2进行重构
2019/11/25 Python
Python GUI编程学习笔记之tkinter界面布局显示详解
2020/03/30 Python
python shapely.geometry.polygon任意两个四边形的IOU计算实例
2020/04/12 Python
浅谈Python 函数式编程
2020/06/20 Python
Pycharm制作搞怪弹窗的实现代码
2021/02/19 Python
MADE法国:提供原创设计师家具
2018/09/18 全球购物
美国精油公司:Plant Therapy
2019/05/17 全球购物
PHP如何删除一个Cookie值
2012/11/15 面试题
电子商务专业学生的自我鉴定
2013/11/28 职场文书
大学生收银员求职信分享
2014/01/02 职场文书
2015年幼儿园后勤工作总结
2015/04/25 职场文书
生死抉择观后感
2015/06/09 职场文书
德劲DE1107指针试高灵敏度全波段收音机机评
2022/04/05 无线电