Django -第二记-ORM概念+项目建立
ORM(对象,关系,映射)概念
ORM主要代表了Django服务器端到数据库的对应关系概念。
而主要的对应包含:建表,更改,转换。
在数据库中建表意味着对象到数据库中表的映射。
在数据库中进行更改意味着对对象的操作映射到对数据库中表的操作。
在数据库中进行转换操作意味着当python提取数据后将数据库数据转换为对象数据的过程。
具体如下图所示。
创建django项目对应ORM
创建项目
django-admin startproject helloworld 创建项目文件,构建项目树
项目目录层级说明
- manage.py 让我们可以使用多种方式与django项目进行交互
- init.py 仅仅是一个空文件,目的是告诉python把django项目处理与python包;如果需要添加mysql的支持,则需要在此文件下加入包依赖:import pymysql ; pymysql.install_as_MySQLdb();
- settings.py 配置文件,可以对数据库进行配置
- urls.py url 管理器,是项目url的声明和管理器
- wagi.py 与wagi兼容的web服务器入口
Django项目框架并不难,重要在于构建数据库以及数据的处理。以上内容均在下图所示的框图中。
创建应用以及项目的基本操作(CMD模式下)
首先,通过python manage.py startapp [项目名称] 来项目的初始配置并创建应用。其中目录中会生成三个目录文件:
- admin.py 站点配置
- models.py 模型配置
- Views.py 视图配置
其次,通过在settings.py文件中将 [项目名称]应用加入到INSTALLED_APPS选项中来激活该项目。
之后,定义模型,在model.py中定义所需要的数据库模型。引入models.Model类定义,在model.py中加入如下代码:from django.db import models 。
最后,生成迁移表,在cmd中使用下面代码,实现表的迁移,创建应用完毕。
- python manage.py makemigrations 生成迁移文件
- python manage.py migrate 执行迁移,并且表名以项目名开头
其中数据的基本操作如下图所示。
服务器与站点管理
服务器
只有启动服务器后才能正常在浏览器中接入网站,在开发时进行非常重要。
使用python manage.py runserver ip:port 来启动服务器,默认8000
admin站点管理
站点管理时django的优点之一。admin站点的主要工作就是将数据的增删查改工作转换为可视化界面,不再使用cmd这种码代码的方式进行。
首先,需要进行的是在settings.py中的installedapp中添加django.contri.admin来配置。
其次,在cmd中创建管理员用户,python manage.py createsuperuser。
然后,在admin.py文件中注册各个表对象。在admin.py中加入代码
from .models import Grades,Students
admin.site.register(Grades)
admin.site.register(Students)
最后,对数据库的内容进行站点配置和管理如下图所示。
之后对于站点管理还会进行一个更详细的分析和解释,因为这部分对于后台管理者来说十分重要。
视图
在django中,对web请求进行回应。视图就是一个python函数,在view.py中定义。基本使用如下图所示。
模板
模板就是HTML界面,根据视图中传递过来的数据进行填充。基本使用如下图所示。
Django 版本 3.0.5