安装django,创建项目
- 查看django版本:python -m django --version
- 卸载django:pip uninstall django==3.0.1
- 安装django:pip install django==2.1.5
- 命令行新建一个项目:django-admin startproject test
- 创建一个子项目(user模块)python manage.py startapp user
- 启动项目: python manage.py runserver
- 设置django为中文 :修改配置文件 setting.py (设置为中文后未生效,重启pycharm生效) LANGUAGE_CODE = 'zh-Hans' TIME_ZONE = 'Asia/Shanghai' USE_TZ = False #使用当前时区
django模式
web开发模式 MVC,MVC只能用于B/S结构的项目
M: model 数据的业务模型。 数据库
C: controller 控制器,对请求进行处理。
V: view 视图,数据的显示或收集。
Django是一个开源的Web应用框架,由Python写成,基于MVC构造。但是在Django中,控制器接受用户输入的部分由框架自行处理,所以 Django 里更关注的是模型(Model)、
模板(Template)和视图(Views),称为 MTV模式。它们各自的职责如下:
层次 | 职责 |
模型(model):数据存取层 | 处理与数据相关的所有事务:如何存取、验证有效性、包含哪些行为以及数据关系等 |
视图(view):表现层 | 处理与表现相关的决定:如何在页面或其他类型的文档中进行显示 |
模板(template):业务逻辑层 | 存取模型及调取恰当模板的相关逻辑,即模型与模板的桥梁 |
django数据库建表流程
1、在Django项目的settings.py文件中,配置数据库连接信息(mysql):
DATABASES = {
"default": {
"ENGINE": "django.db.backends.mysql",
"NAME": "数据库名称", # 需要自己手动创建数据库
"USER": "数据库用户名",
"PASSWORD": "数据库密码",
"HOST": "数据库IP",
"PORT": 3306
}
}
- 在与Django项目同名的目录下的
__init__.
py文件中写如下代码,告诉Django使用pymysql模块连接MySQL数据库: -
import pymysql pymysql.install_as_MySQLdb()
2、在models.py中定义表结构类、表名、排序字段方式
class Category(models.Model): name = models.CharField(verbose_name='分类名称', max_length=50, unique=True) create_time = models.DateTimeField(verbose_name='创建时间', auto_now_add=True) update_time = models.DateTimeField(verbose_name='修改时间', auto_now=True) is_delete = models.BooleanField(verbose_name='是否删除', default=False) class Meta: # 首页 5 db_table = 'category' # ordering = ['create_time'] verbose_name = '文章分类' verbose_name_plural = verbose_name def __str__(self): return self.name + '导航分类'
3、生成表结构
python manage.py --help 查看命令
python manage.py makemigrations
4、建表
python manage.py migrate