代码详解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编程使用NLTK进行自然语言处理详解
Nov 16 Python
python 寻找优化使成本函数最小的最优解的方法
Dec 28 Python
Django中使用Celery的教程详解
Aug 24 Python
Python中使用双下划线防止类属性被覆盖问题
Jun 27 Python
python实现WebSocket服务端过程解析
Oct 18 Python
Python计算公交发车时间的完整代码
Feb 12 Python
python3实现网页版raspberry pi(树莓派)小车控制
Feb 12 Python
Python3 webservice接口测试代码详解
Jun 23 Python
Python使用tkinter实现摇骰子小游戏功能的代码
Jul 02 Python
Python如何测试stdout输出
Aug 10 Python
Python的scikit-image模块实例讲解
Dec 30 Python
python中tkinter复选框使用操作
Nov 11 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 使用post,get的一种简洁方式
2010/04/25 PHP
PHP5中虚函数的实现方法分享
2011/04/20 PHP
一款简单实用的php操作mysql数据库类
2014/12/08 PHP
php通过修改header强制图片下载的方法
2015/03/24 PHP
PHP语法小结之基础和变量
2015/11/22 PHP
PHP实现长文章分页实例代码(附源码)
2016/02/03 PHP
关于php支持的协议与封装协议总结(推荐)
2017/11/17 PHP
Laravel框架控制器,视图及模型操作图文详解
2019/12/04 PHP
jQuery-ui中自动完成实现方法
2010/06/10 Javascript
简单实用jquery版三级联动select示例
2013/07/04 Javascript
jQuery中:radio选择器用法实例
2015/01/03 Javascript
Angular2学习笔记——详解NgModule模块
2016/12/02 Javascript
canvas实现图像截取功能
2017/02/06 Javascript
移动端刮刮乐的实现方式(js+HTML5)
2017/03/23 Javascript
jQuery添加新内容的四个常用方法分析【append,prepend,after,before】
2019/03/19 jQuery
vue vantUI实现文件(图片、文档、视频、音频)上传(多文件)
2019/10/15 Javascript
vue中路由跳转不计入history的操作
2020/09/21 Javascript
vue 验证两次输入的密码是否一致的方法示例
2020/09/29 Javascript
[01:11:21]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第三场 3月7日
2021/03/11 DOTA
python回溯法实现数组全排列输出实例分析
2015/03/17 Python
关于Python中Inf与Nan的判断问题详解
2017/02/08 Python
python处理两种分隔符的数据集方法
2018/12/12 Python
使用TensorFlow实现二分类的方法示例
2019/02/05 Python
使用Django开发简单接口实现文章增删改查
2019/05/09 Python
Python Django框架防御CSRF攻击的方法分析
2019/10/18 Python
Python原始套接字编程实例解析
2020/01/29 Python
python ETL工具 pyetl
2020/06/07 Python
2014年销售部工作总结
2014/12/01 职场文书
法律意见书范文
2015/05/20 职场文书
聚众斗殴罪辩护词
2015/05/21 职场文书
2015年网络舆情工作总结
2015/07/24 职场文书
幼儿园体操比赛口号
2015/12/25 职场文书
WordPress多语言翻译插件 - WPML使用教程
2021/04/01 PHP
Python词云的正确实现方法实例
2021/05/08 Python
Window server中安装Redis的超详细教程
2021/11/17 Redis
数据分析数据库ClickHouse在大数据领域应用实践
2022/04/03 MySQL