江西省城乡建设培训网 官方网站,在线设计家装,优化问题网站,如何以目录形式访问网站1、网站架构演变 1.1 网站访问流程 1.2 网站架构演变 1.2.1 单一应用架构 场景#xff1a;路边摊的手抓饼 需求#xff1a; 需求单一 功能#xff1a; 需求--配菜--制作 一个人搞定 效率#xff1a; 对单个需求来说#xff1a;快 特点#xff1a; 需求#xff1a;单一…1、网站架构演变 1.1 网站访问流程 1.2 网站架构演变 1.2.1 单一应用架构 场景路边摊的手抓饼 需求 需求单一 功能 需求--配菜--制作 一个人搞定 效率 对单个需求来说快 特点 需求单一应用 服务 所有服务都部署在一台机器上 效率用户量少的情况下访问快 开发快 优点 成本低、开发速度快 缺点 用户访问量不能太大 开发技术关键点 all in one 1.2.2 垂直应用架构 前提 随着人流量的增多效益越来越好 场景店的手抓饼 需求需求种类多 功能 需求 配菜 制作 每个步骤由专人负责速度快 效率 快 前提 随着用户访问量的增多效益越来越好 特点 需求功能模块逐渐增多 服务每个服务专用服务器 效率访问量大 优点 技术集中、效率高 确定 服务模块间需要交流需要我们开发相应的接口 开发技术关键点 MVC 1.2.3 分布式应用架构 开发技术关键点RPC 1.2.4 流式计算应用架构 开发技术关键点SOA 2、django基础知识 2.1 django简介 django是什么 2003年的秋天2个小朋友2005开发源码 django就是 基于python语言开发的 全栈一体式的 web框架 基于MVC框架演变和精简后的一个web框架他叫MTV 常见的web框架 django、flask、tornado 为什么学django 技能提升 面试有优势 2.2 MVC MTV MVC mvc是什么 M model 模型 数据访问层、跟数据库打交道 V view 视图 展示数据 C controller 控制器 控制用户输入给用户返回数据 mvc的访问流程 1、用户发起请求 2、请求交给controller 3、如果请求需要数据那么controller调用model 4、model去和数据库进行交互获取相应的数据然后将数据返回给控制器 5、控制器去view获取展示数据用的模板等文件 6、controller将数据填充模板当中形成一个完整的web页面 7、将web页面返回给用户 MTV mtv是什么 django的框架 mtv和mvc到底有什么区别 1、mvc的c融合到了django的代码中 2、mvc的v拆分成了 数据逻辑 view 数据展示 template 3、model没有变化 mtv框架 M model 模型 数据访问层、跟数据库打交道 V view 视图 数据展示【数据逻辑控制】 1、调用模型类 2、调用模板填充数据 T template 模板 各种模板文件 2.3 django的访问流程 1、用户发起请求 2、请求转交给view视图 3、如果涉及到数据那么view调用相应的model进行数据处理 4、model从数据库中获取数据然后返回给view 5、view要展示数据那么需要存放数据的模板 6、view调用template获取模板文件 7、将数据填充到模板文件中形成一个完整的web页面 8、将web页面返回给用户 3、环境部署 需求 配置一个django项目的开发环境 条件 电脑、人、网 、电 分析 2、python环境 3、问题 多项目使用同一模块的不同版本 4、解决方案 5、python虚拟环境 1、django环境部署 6、django软件安装 7、项目开发工具-pycharm 8、安装pycharm 9、基本配置 11、项目简单操作 12、应用简单操作 10、django项目的配置 13、数据库配置 14、templates配置 15、view配置 16、项目整体测试 3.1 python虚拟环境 安装软件 安装虚拟软件 apt-get install python-virtualenv 检查 # which virtualenv /usr/bin/virtualenv 虚拟环境的简单操作 创建 virtualenv -p /usr/bin/python2.7 venv 进入 source venv/bin/activate 退出 deactivate 删除 rm -rf venv 3.2 django环境部署 安装django 解压软件 tar xf Django-1.10.7.tar.gz 查看帮助 cd Django-1.10.7/ INSTALL 或者 README 安装 python setup.py install 检查 which django-admin python类型软件安装流程 普通的 解压 -- 安装 特殊的 解压 -- 编译 -- 安装 编译 python setup.py build python项目基本操作 创建项目 django-admin startproject itcast 启动项目 cd itcast python manage.py runserver 关闭项目 Ctrl c 查看manage.py文件帮助信息 python manage.py --help python应用基本操作 创建项目 python manage.py startapp test1 注册项目 INSTALL_APPS [ test1, ] 3.3 开发工具安装 安装pycharm 解压 安装 基本配置 3.4 项目环境配置 需求 数据库调整为mysql 分析 1、安装mysql 2、字符编码配置 3、创建数据库 4、django和mysql通信的第三方模块 apt-get install libmysqlclient-dev python-dev pip install mysql-python 4、django配置数据库的连接 引擎、数据库名、连接用户、主机、端口、密码 5、数据的迁移 生成迁移 执行迁移 应用名_类名(小写) 6、测试查看 安装数据 apt-get install libmysqlclient-dev python-dev template配置 4、django小示例 需求 一个页面直接展示所有书籍 分析 数据部分 数据是存放在数据库 数据有模型类来配置 给数据添加数据 模板部分 模板文件 标签 变量标签 {{变量名}} 模板文件中只有变量名 循环标签 {%for 条件%} ... {%endfor%} 从数据库中获取数据 将数据填充到模板中 url配置部分 127.0.0.1:8000/booklist/ view配置部分 数据部分 class BookInfo(models.Model): btitle models.CharField(max_length20) def __str__(self): return self.btitle 我们定义一个书籍的模型类