代码详解django中数据库设置

(编辑:jimmy 日期: 2024/9/28 浏览:2)

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

启动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对应的数据库表,但是表的内容是空的。

一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。