Django 框架

Django 是用 Python 开发的一个免费开源的 Web 框架,几乎囊括了 Web 应用的方方面面,可以用于快速搭建高性能、优雅的网站,Django 提供了许多网站后台开发经常用到的模块,使开发者能够专注于业务部分。

Django 提供了通用 Web 开发模式的高度抽象,为频繁进行的编程作业提供了快速解决方法,并为“如何解决问题”提供了清晰明了的约定。Django 通过 DRY(Don’t Repeat Yourself,不要重复自己)的理念来鼓励快速开发。

搭建 Django 开发环境主要分为以下 5 个步骤:

  • 安装 Python 解释器
  • 安装 MySQL 数据库
  • 安装 Python 包管理器 pip
  • 安装 Pycharm IDE
  • 安装 Django

具体搭建过程参见搭建Django开发环境

安装插件

1、安装psycopg2,参见上节:psycopg2 接口

2、安装Django

pip install django

image-20220507111244614

3、配置settings

​ 在django项目的主app中找到项目的settings.py文件,找到关于Database的设置。django默认使用的是sqlite3数据库,所以我们先将默认的两行配置注释,然后添加上关于postgreSQL的配置。

ATABASES = {
'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': '' # 数据库名称
'USER': '' # 登录数据库用户名
'PASSWORD': '', # 登录数据库密码
'HOST': '' # 数据库服务器的主机地址
'PORT': '' # 数据库服务的端口号
}

示例项目

项目结构图如下:

image-20220517155035305

修改配置文件

settings.py

DATABASES = {
'default': {
#'ENGINE': 'django.db.backends.sqlite3',
#'NAME': BASE_DIR / 'db.sqlite3',
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'test', # 数据库名字(需要先创建)
'USER': 'test', # 登录用户名
'PASSWORD': 'test', # 密码
'HOST': '192.168.2.5', # 数据库IP地址,留空默认为localhost
'PORT': '5866', # 端口
}
}

manage.py

import psycopg2  #增加引用psycopg2

终端执行

# 创建migrations 文件包中迁移文件(文件名格式:0001_initial.py)
python manage.py makemigrations
# 迁移
python manage.py migrate
# 以下为输出信息
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying auth.0009_alter_user_last_name_max_length... OK
Applying auth.0010_alter_group_name_max_length... OK
Applying auth.0011_update_proxy_permissions... OK
Applying auth.0012_alter_user_first_name_max_length... OK
Applying sessions.0001_initial... OK

查看数据库

image-20220507152848405

可以看到Django框架默认的数据表已经创建成功,就可以使用HGDB数据库了。