django从入门到放弃

基于Python的web的四种框架:

  1. Django
  2. Flask
  3. Tornado
  4. Web.py

什么是web

WEB:英文单词[网状物],主要用于表示计算机中的广域网络[world wide web](www)。 world wide web:全球广域网络,也称为万维网,是一种基于超文本和 HTTP 的全球性 的、动态交互的、跨平台的分布式图形信息系统,是建立在 internet 上的一种网络服务。

什么是框架

框架:提供方法属性的同时,也同时提供了事物处理逻辑,可扩展代码

什么是模块

模块:为了完成一件事或莫些事,而封装的代码,提供封装好的代码和属性

Django的基本操作

关于python环境下的django安装和检验

Dojango 属于Python众多第三方模块的序列,可通过 pip install Django ==1.11(这里的==1.11是特指下载安装django1.11版本 可选)

检查django的安装后检验:通过 命令行 输入django-admin –version 这是查询环境中是否包括安装好的django模块 返回回来的是一安装好的django版本信息,肉下载已安装好则表示已安装好,如无反馈即安装有问题即就要重新下载安装。

Django的优缺点势及架构模式

Django是一个功能十分强大的web开发框架,他优点提供了丰富的各种需要的功能;

  1. 强大的mvt项目开发架构
  2. 完善的模板视图支持
  3. 准确的模板地址映射
  4. 干笑的ORM数据操作
  5. 完善的后台管理
  6. 优秀的扁担处理功能

缺点是:

  1. 大包大揽: 对于一些轻量级应用不需要的功能模块Django也包括了,不如Flask轻便。
  2. 过度封装: 很多类和方法都封装了,直接使用比较简单,但改动起来就比较困难。
  3. 性能劣势: 与C, C++性能上相比,Django性能偏低,当然这是python的锅,其它python框架在流量上来后会有同样问题。
  4. 模板问题: django的模板实现了代码和样式完全分离,不允许模板里出现python代码,灵活度对某些程序员来说可能不够。

架构模式

MVC 软件架构: 软件是用来进行数据处理的,数据我们用 Model 来表示,根据软件的三层结构模型, 视图部分通过 View 进行表示,在视图 View 中,我们可以和用户进行数据交互,交互的数 据被提交到服务器,服务器根据用户提交的数据,经过控制器 Controller 进行判断并移交给 合适的函数进行处理的过程。

M(model) 模型                     类、以及跟数据库相关的代码

V(view)  视图                页面

C(controller) 控制器             接受参数,分发请求

 

MVT 软件架构: Django 在处理的过程中,对于经典的 MVC 处理模式并不是非常认同,在实际项目开 发过 程中控制器 Controller 起到的作用非常的有限,所以 Django 将控制器部分也进行了 封装,但是同时扩展了视图 View 部分,增加了模板功能实现了前端网页的复用

M(model) 模型层

V(view) 视图层

T(templates) 模板层

分层管理

       高内聚,低耦合

关于django的根目录各文件表示

Cd到主目录

项目文件结构如下:

     |-- mysite (可随意命名)                          # 表示项目名称

            |-- mysite                    # 根模块,根模块跟项目名称保持一致

                   |-- __init__.py        # 模块描述文件

                   |-- settings.py              # 项目的配置文件

                   |-- urls.py             # 根路由模块

                   |-- wsgi.py            # django实现wsgi,目前使用不到

            |-- manage.py                    # 该文件是项目的命令文件,不需要我们修改

 

启动Django项目:

     cd 项目主目录中来

     python manage.py  runserver  #django项目启动

 

eg:

     python manage.py  runserver [port]

    

     python manage.py  runserver [ip:port]

 

 

关于在django创建子模块

cd 项目主目录

django-admin startapp <子模块名称>

       |-- mysite(可随意命名)                    # 项目名称

              |-- mysite             # 根模块

                     |-- __init__.py # 模块描述文件

                     |-- settings.py       # 项目的配置

                     |-- wsgi.py     # 实现了wsgi web网关接口

              |-- blog         # 子模块

                     |-- migrations       # 同步数据的迁移文件的文件夹

                     |-- __init__.py # 模块描述文件

                     |-- admin.py  # 后台管理系统用来管理子模块中的模型类的文件

                     |-- views.py   # 子模块的视图文件

                     |-- urls.py      # 需要我们创建,子模块的路由文件

                     |-- models.py # 定义模型类

                     |-- tests.py     # 测试文件

                     |-- apps.py    # 定义子模块项目项的文件             

              |-- manage.py             # 项目的命令文件

 

 

当子模块创建完成后,要求必须执行两项操作否则可导致路由系统

       1、在根模块的settings.py配置文件中INSTALLED_APPS=["子模块名称"]

       2、创建子路由,之后交给根路由来管理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值