Django开发-框架简介

第1章 MVC框架介绍

MVC全名是Model View Controller,是软件工程中的一种软件架构模式。把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller),具有耦合性低、重用性高、生命周期成本低等优点。

图片[1]|Django开发-框架简介|leon的博客

第2章 MTV框架介绍

Django框架的设计模式借鉴了MVC框架的思想,也是分成三部分来降低各个部分之间的耦合性。

Django框架的不同之处在于它拆分的三部分为:Model(模型)、Template(模板)和View(视图),也就是MTV框架。

  • Model(模型):负责业务对象与数据库的对象(ORM)
  • Template(模版):负责如何把页面展示给用户
  • View(视图):负责业务逻辑,并在适当的时候调用Model和Template

此外Django还有一个urls分发器,它的作用是将一个个URL的页面请求分发给不同的view处理,view再调用相应的Model和Template

图片[2]|Django开发-框架简介|leon的博客

第3章 Django介绍

3.1 安装Django

3.1.1 命令行安装

pip3 install django==1.11.9

3.1.2 PyCharm安装

图片[3]|Django开发-框架简介|leon的博客

3.2 创建Django项目

3.2.1 命令行创建

django-admin startproject mysite

3.2.2 Pycharm创建

图片[4]|Django开发-框架简介|leon的博客

图片[5]|Django开发-框架简介|leon的博客 图片[6]|Django开发-框架简介|leon的博客

3.2.3 目录结构介绍

图片[7]|Django开发-框架简介|leon的博客

mysite/
├── manage.py        # 管理文件
└── mysite           # 项目目录
    ├── __init__.py
    ├── settings.py  # 配置
    ├── urls.py      # 路由:URL和函数的对应关系
    └── wsgi.py      # runserver命令就使用wsgiref模块做简单的web server

3.3 运行Django项目

3.3.1 命令行方式

python manage.py runserver 127.0.0.1:8000

3.3.2 Pycharm方式

图片[8]|Django开发-框架简介|leon的博客

3.4 Django项目初始化

图片[9]|Django开发-框架简介|leon的博客

3.4.1 配置模板文件

3.4.2 配置静态文件路径

STATIC_URL = '/static/'                 # 静态文件保存目录的别名,名字可以自定义
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static"),  # 静态文件(css/js/图片)存放位置
]

图片[10]|Django开发-框架简介|leon的博客

3.4.2.1 静态文件查找原理

图片[11]|Django开发-框架简介|leon的博客

3.4.3 禁用csrf中间件(仅测试时使用)

图片[12]|Django开发-框架简介|leon的博客

3.4.4 添加web三件套

from django.shortcuts import HttpResponse, render, redirect

图片[13]|Django开发-框架简介|leon的博客

3.4.4.1 HttpResponse

【作用】:内部传入一个字符串参数,返回给浏览器。

【示例】:

def index(request):
    # 业务逻辑代码
return HttpResponse("OK")

3.4.4.2 render

【作用】:除request参数外还接受一个待渲染的模板文件和一个保存具体数据的字典参数,将数据填充进模板文件,最后把结果返回给浏览器。

【示例】:

def index(request):
    # 业务逻辑代码
return render(request, "index.html", {"name": "alex", "hobby": ["篮球", "足球"]})

3.4.4.3 redirect

【作用】:接受一个URL参数,表示跳转到指定的URL。

【示例】:

def index(request):
    # 业务逻辑代码
    return redirect("/admin/")

3.5 创建APP

一个Django项目可以分为很多个APP用来隔离不同功能模块的代码。

3.5.1 命令行创建

python manage.py startapp app02

3.5.2 PyCharm创建

图片[14]|Django开发-框架简介|leon的博客

手动在下方弹出的命令窗口输入:

startapp app02

第4章 问题总结

4.1 UnicodeEncodeError

【错误描述】:Django 启动时报错 “UnicodeEncodeError …”

【错误原因】:通常是因为计算机名为中文

【解决方法】:改成英文的计算机名重启下电脑就可以了

4.2 SyntaxError: Generator expression must be parenthesized

【错误描述】:Django 启动报错“SyntaxError: Generator expression must be parenthesized”

【错误原因】:很大可能是因为使用了Python3.7.0,而目前(2018-06-12)Python3.7.0和Django还有点兼容性问题

【解决方法】:换回Python3.6的环境即可

第5章 参考资料

https://www.cnblogs.com/liwenzhou/p/8258992.html

https://www.cnblogs.com/liwenzhou/p/8296964.html

https://www.djangoproject.com/download/

温馨提示:本文最后更新于2022-12-20 20:57:44,已超过487天没有更新。某些文章具有时效性,若文章内容或图片资源有错误或已失效,请联系站长。谢谢!
转载请注明本文链接:https://blog.leonshadow.cn/763482/1586.html
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享