一 django的创建以及配置
创建django就比较简单了,我这里就简单的演示一下,就不放图片了
#选择你要创建的目录,cd到该路径下
django-admin startproject myproject #创建django,名称为myproject
#此时其实已经可以运行,但是一般情况下都需要创建app,cd到刚才创建的django下,创建app
cd myproject
python manage.py startapp myapp #创建的名称为myapp的app
python manage.py runserver #运行django的命令,执行后就会出现django运行的网址,即可看见小火煎
# 当然你是创建了app,所以你还需要记得修改myproject下的settings配置,给app加到里面,而且你的路由也是需要修改的,具体操作我不详细介绍了,就是大致是这样子的过程
二 数据库的配置
在Django里面的DATABASES 中是数据库的配置,django原生的数据库是sqlite3,这个数据库也是可以使用,但是只适用于测试使用,在实际的使用中一般不会使用这个数据库,所以我们大多数情况下我们就需要连接其他数据库了 ,这里介绍几种常见的数据连接
Django中 Oracle连接配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.oracle',
'NAME': 'DEMO',
'USER': 'demo1',
'PASSWORD': 'demo1',
'HOST': "10.XXX.XXX.XXX", # Set to empty string for localhost
'PORT': '1521', #端口
}
}
Django中 Mysql连接配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', #数据库名字 'NAME': 'study', 'USER': 'root', 'PASSWORD': 'centos', 'HOST': '127.0.0.1', 'PORT': '3306', 'OPTIONS': { 'autocommit': True, 'init_command': "SET sql_mode='STRICT_TRANS_TABLES'", }, } }
我来提醒一点:我们在创建数据库时,我们的这个DATABBASWS无论是在哪个文件里面都是可以的,不一定就是在settings.py文件里面,我们连接数据库后,在后端检出是否连接成功我们可以输入以下命令:
python manage.py shell #打开manage.py shell
python manage.py shell #进入shell from django.conf import settings #import settings settings.DATABASES #查看连接状态 ##返回的结果## {'default': {'ENGINE': 'sql_server.pyodbc', 'HOST': '192.168.1.9', 'PORT': 1433, 'USER': 'sa', 'PASSWORD': 'Abc123#@!', 'NAME': 'AAA', 'OPTIONS': {'driver': 'SQL Server Native Client 10.0', 'MARS_Connection': True}, 'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'TIME_ZONE': None, 'TEST': { 'CHARSET': None, 'COLLATION': None, 'NAME': None, 'MIRROR': None}}, 'db_read': {'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': 'zk3', 'USER': 'postgres', 'PASSWORD': '123456', 'HOST': '127.0.0.1', 'PORT': '5432'}, 'db_write': {'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': 'zk3', 'U SER': 'postgres', 'PASSWORD': '123456', 'HOST': '127.0.0.1', 'PORT': '5432'}}
可以看到连接的数据库的连接状态
然后我们需要在settings同级目录下的--init--.py文件中把数据引入,举例mysql
import pymysql pymysql.install_as_MySQLdb()
然后使用mysql是在我们创建的app的models.py文件中完成的,打开我们创建的myapp下的models.py文件,编写
from django.db import models class Test(models.Model): test = models.CharField(max_length=10) 这里我们创建了一个一个test数据表,然后在数据表中添加字段,设置最大的字符限制为10
python manage.py migrate # 创建表结构
python manage.py migration # 数据变动更新
然后我们在mysql数据库中就可以查看到我们创建的数据,在一般的项目中我们的数据操作都是在models.py文件中创建的
三,数据库的迁移
生成迁移文件
python manage.py makemigrations
这一条命令可以使用在后面接app名称,为指定迁移的数据,不指定默认·为全部
python manage.py makemigrations name
对数据进行迁移
python manage.py migrate
就完成了,然后会生成一个迁移文件为00xxx.py