django的创建以及数据库配置

本文介绍了如何创建Django项目和应用,并详细讲解了数据库配置,包括SQLite3、Oracle及MySQL的连接设置。在Django中,通过修改settings.py文件和运行管理命令实现数据库的连接与迁移。同时,文章还展示了检查数据库连接状态的方法以及在models.py中定义数据模型的操作流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一 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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值