Django快速上手

Django简介

Django 框架最初的诞生,主要是用来开发和管理 Lawrence Publishing Group(劳伦斯出版集团)旗下新闻网站的一款软件,是一款属于 CMS(Content Management System,内容管理系统)类的软件,并于 2005 年 7 月取得了 BSD 许可证下的发布权限。之后,经过开发人员的不断努力,Django 1.0 版于 2008 年 9 月正式发布。

Django 框架的设计初衷是为了简便、快速地开发出易于维护的数据库驱动型网站,其所独具的代码复用功能,支持将各种组件以"插件"方式嵌入到整个应用框架,从而极大地提高了应用开发的效率。Django 框架自身具有很强大的扩展性,在开源社区中存在有许多功能强大的第三方插件,开发人员可以非常方便地以"即插即用"的方式应用到自己的项目中。

Django 框架也是一个遵循 MVC 设计模式的框架。

不过从严格意义上讲,Django 框架采用了一种更为特殊的 MTV 设计模式,其中的"M"代表模型、"V"代表视图、"T"代表模板。MTV 模式本质上也是基于 MVC 模式的,是从 MVC 模式变化而来的。

MTV 模式的具体内容:

  • M 模型(Model)表示的是数据存取层,处于 MTV 模式的底层。M 模型负责处理与数据相关的所有事务,包括如何存取、如何验证有效性、如何处理数据之间关系等方面的内容。
  • T 模板(Template)表示的是表现层,处于 MTV 模式的顶层。T 模板负责处理与表现相关的操作,包括如何在页面或其他类型文档中进行显示等方面的内容。
  • V 视图(View)表示的是业务逻辑层,处于 MTV 模式的中间层。V 视图负责存取模型及调取适当模板的相关逻辑等方面的内容,是 M 模型与 T 模板之间进行沟通的桥梁。

1、安装(命令安装)

Django可以在cmd命令行中安装,也可以在pycharm中安装,但是pycharm需要专业版,所以我选择命令安装

进入cmd 中

bash 复制代码
pip install django

因为我有python2和python3 ,我希望安装在python3,需要用下面的命令

bash 复制代码
py -3 -m pip install django

安装好后在安装目录的Scripts会有django-admin.exe 这个是工具,创建django项目中的文件和文件夹,会有下面文件

2、创建项目

django中项目会有一些默认的文件 和默认的文件夹。

在cmd终端:

  • 打开终端。
  • 进入某个目录(项目放在哪里)。
bash 复制代码
F:\myfile\python\code>
  • 执行命令创建项目
    mysite是项目名称
bash 复制代码
"C:\Users\Administrator\AppData\Local\Programs\Python\Python37\Scripts\django-admin.exe" startproject mysite

默认项目的文件介绍,项目名称为mysite

3、APP

一个项目可以创建多个app, 可以一个模块一个app,

-项目

  • app, 用户管理[表结构、函数、HTML模板、 css]
  • app, 订单管理[表结构、函数、HTML模板、css]
  • app, 后台管理[表结构、函数、HTML模板、css]
  • app,网站 [表结构、函数、HTML模板、css]
  • app, API [表结构、函数、HTML模板、css]

注意:我们开发比较简洁,用不到多app, - -般情况下,项目下创建1个app即可。

创建app, 进入pycharm, 打开之前通过命令创建的项目,在pycharm的终端执行, 虽然项目是通过命令创建的,创建好后通过pycharm打开

bash 复制代码
python manage.py startapp app01

或者:

bash 复制代码
Django-admin startapp app01

或者:

bash 复制代码
py -3 manage.py startapp app01

4、快速上手

1、确保app已注册

在项目的djangoproject目录下的settings.py中添加配置,在INSTALLED_APPS的最后添加'app01.apps.App01Config',

python 复制代码
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'app01.apps.App01Config',
]

在app01->apps.py中有一个App01Config的类

2、编写URL和视图函数对应关系[urls.py]

在urls.py中添加下面内容

python 复制代码
from django.contrib import admin
from django.urls import path

from app01 import views
urlpatterns = [
    #path('admin/', admin.site.urls),
    #访问XXXX.com/index  -->函数
    path('index/', views.index),

]

index/ 表示路径,在访问的时候 xxxx.com/index/

views.index是要在app01->views.py中添加的函数,将路径和函数绑定

3、编写视图函数 在app01目录下的【views.py

python 复制代码
from django.shortcuts import render, HttpResponse

# Create your views here.
def index(request):
    return HttpResponse("欢迎使用")

4、运行项目

正常的执行

python 复制代码
python manage.py runserver

但是我的执行这个就报错

这个应该是我安装了python2和python3的环境,没有使用python3的解释器

我改成下面的,就成功启动了

python 复制代码
py -3 manage.py runserver

访问页面 http://127.0.0.1:8000/index/:

相关推荐
databook1 小时前
Manim实现闪光轨迹特效
后端·python·动效
Juchecar2 小时前
解惑:NumPy 中 ndarray.ndim 到底是什么?
python
用户8356290780512 小时前
Python 删除 Excel 工作表中的空白行列
后端·python
Json_2 小时前
使用python-fastApi框架开发一个学校宿舍管理系统-前后端分离项目
后端·python·fastapi
数据智能老司机9 小时前
精通 Python 设计模式——分布式系统模式
python·设计模式·架构
数据智能老司机10 小时前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
数据智能老司机10 小时前
精通 Python 设计模式——测试模式
python·设计模式·架构
数据智能老司机10 小时前
精通 Python 设计模式——性能模式
python·设计模式·架构
c8i10 小时前
drf初步梳理
python·django
每日AI新事件10 小时前
python的异步函数
python