4- vue django restful framework 打造生鲜超市 -restful api 与前端源码介绍

天涯明月笙 关注

2018.02.20 19:23* 字数 762 阅读 1352评论 6喜欢 16

使用Python3.6与Django2.0.2(Django-rest-framework)以及前端vue开发的前后端分离的商城网站

项目支持支付宝支付(暂不支持微信支付),支持手机短信验证码注册, 支持第三方登录。集成了sentry错误监控系统。

线上演示地址: http://vueshop.mtianyan.cn/
github源代码地址: https://github.com/mtianyan/VueDjangoFrameWorkShop

本小节内容: restful api 与前端源码介绍

4- restful api 与前端源码介绍

restful api 介绍

  • 前后端分离优缺点

为什么要前后端分离

  1. pc,app,pad多端适应

后端模板渲染的方式适合pc,app端不好弄。

  1. SPA开发模式开始流行

单页面应用。最流行的方式就是前后端分离,后端提供接口。

  1. 前后端开发职责不清

Django的template由谁写?拆分,模板语言。
php java template 语言使用。

  1. 开发效率问题,前后端互相等待
  2. 前端一直配合着后端,能力受限
  3. 后台开发语言和模板高度耦合,导致开发语言依赖严重。

前后端分离缺点:

- 前后端学习门槛增加,后端的if else语法。这些根据数据展示页面交给前端做了
- 数据依赖导致文档重要性增加,以前交给后端,后端一个人看懂
- 前端工作量加大
- seo的难度加大,爬虫请求不到数据。有专门的优化
- 后端开发模式迁移增加成本

restful api

restful api 目前是前后端分离最佳实践(一套标准,建议)

  1. 轻量,直接通过http,不需要额外协议,post/get/put/delete操作
  2. 面向资源,一目了然,具有自解释性。

资源是名词,post等是动词

推荐阅读: 理解restful架构 阮一峰

vue基本概念介绍

  1. 前端工程化
  2. 数据双向绑定
  3. 组件化开发

nodejs 包管理。

mvvm: 数据驱动view,view又改变数据。

双向数据绑定。

表单变成一个组件。而以前bootstrap就得引入库,库中有很多我们不需要的东西。

vue开发中的几个概念

  1. webpack

重要,属于js工具。

  • es6到es5代码转换,vue不能被浏览器认识。

最终想让浏览器认识就得html js css

 
mark

可以看到看起来什么都没写。

webpack将所有东西打包变成一个js文件。

  1. vue vuex(组件通讯) vue_router(单页面的路由) axios

前端内部自己跳转,发送ajax请求。不推荐操作dom。
jQuery导入进来只用ajax。不如axios。

  1. ES6, babel

es6语法。babel将es6转换为es5。

vue项目的目录结构

vue的组件方案

babel配置文件

mock数据。

 
mark
  • api就是我们现在请求网络的api,所有组件的api通过这个设置。
  • axios设置了全局拦截401
  • components是基础组件
  • router 路由
  • style 全局静态文件

views中可以看到我们所有组件。

  • header组件。
  • 轮播图
  • 新品
  • 分页组件
  • 个人中心三组件
  • 结算组件

想知道页面是由哪些vue的组件凑成。

 
mark

使用vue官方提供的插件。

app.vue 入口文件。

原文学习来自简书,作者:天涯明月笙

原文链接:https://www.jianshu.com/p/a0f0dbd24329

4- vue django restful framework 打造生鲜超市 -restful api 与前端源码介绍的更多相关文章

  1. 3- vue django restful framework 打造生鲜超市 - model设计和资源导入

    3- vue django restful framework 打造生鲜超市 - model设计和资源导入 使用Python3.6与Django2.0.2(Django-rest-framework) ...

  2. 引爆潮流技术 Vue+Django REST framework打造生鲜电商项目

    引爆潮流技术Vue+Django REST framework打造生鲜电商项目 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受, ...

  3. 7- vue django restful framework 打造生鲜超市 -商品类别数据展示(上)

    Vue+Django REST framework实战 搭建一个前后端分离的生鲜超市网站 Django rtf 完成 商品列表页 并没有将列表页的数据json 与前端的页面展示结合起来 讲解如果将dr ...

  4. 6- vue django restful framework 打造生鲜超市 -完成商品列表页(下)

    Vue+Django REST framework实战 搭建一个前后端分离的生鲜超市网站 Django rtf 完成 商品列表页下 drf中的request和response drf对于django的 ...

  5. 1- vue django restful framework 打造生鲜超市

    Vue+Django REST framework实战 使用Python3.6与Django2.0.2(Django-rest-framework)以及前端vue开发的前后端分离的商城网站 项目支持支 ...

  6. Vue+Django REST framework打造生鲜电商项目

    1-1 课程导学 2-1 Pycharm的安装和简单使用 2-2 MySQL和Navicat的安装和使用 2-3 Windows和Linux下安装Python2和Python3 2-4 虚拟环境的安装 ...

  7. 5- vue django restful framework 打造生鲜超市 -完成商品列表页(上)

    使用Python3.6与Django2.0.2(Django-rest-framework)以及前端vue开发的前后端分离的商城网站 项目支持支付宝支付(暂不支持微信支付),支持手机短信验证码注册, ...

  8. 2- vue django restful framework 打造生鲜超市 -环境搭建

    使用Python3.6与Django2.0.2(Django-rest-framework)以及前端vue开发的前后端分离的商城网站 项目支持支付宝支付(暂不支持微信支付),支持手机短信验证码注册, ...

  9. web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 ☝☝☝

    web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程    web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 学习 ...

随机推荐

  1. rabbitMq创建和获取消息

    package com.yunda.inter.preload.contextinit; import net.sf.json.JSONObject; import org.apache.common ...

  2. Linux Shell命令系列(1)

    1. ls命令ls命令是列出目录内容(List Directory Contents)的意思.运行它就是列出文件夹里的内容,可能是文件也可能是文件夹.“ls -l”命令以详情模式(long listi ...

  3. mysql 位操作支持

    mysql 支持位操作. & 位与 | 位或 例如:update car_ins_fee_entity set change_status=(change_status | 1) where ...

  4. java中过滤器、监听器、拦截器的区别

    1.过滤器:所谓过滤器顾名思义是用来过滤的,在java web中,你传入的request,response提前过滤掉一些信息,或者提前设置一些参数,然后再传入servlet或者struts的actio ...

  5. Linux下安装软件遇见的问题汇总

    1.安装monodevelop 安装环境Linux Mint17.1 在软件在中心直接安装monodevelop,安装完成后直接启动界面“一闪而过”,解决办法: 软件中心安装 mono-complet ...

  6. SpringMVC 返回自定义属性名

    SpringMVC 返回的属性名默认是小写驼峰形式的实体对象中的属性名,如 userID 属性名它会返回 userId. 如果接口方式之前已经定下来,这样前端按原来的方式取数据会读取失败的,那有没有方 ...

  7. css盒子模型 css3盒子相关样式

    1.内边距(内边距在content外,边框内) 内边距属性: padding          设置所有边距 padding-bottom     底边距 padding-left           ...

  8. 从零开始的全栈工程师——js篇2.14(表单与计时器)

    一.表单 Form input select textarea type=”radio/checkbox/password/button/text/submit/reset/” 表单的事件 oncha ...

  9. 学习笔记:MDN的服务器端网站编程

    互联网是如何工作的 互联网(Internet)和网络(web) 互联网是基础设施,网络是建立在这种基础设施之上的服务. 网页,网站,网络服务器和搜索引擎的区别是什么? 网页(webpage) 一份能够 ...

  10. java集合杂谈

    一:java集合框架如下图所示: 大致说明:看上面的框架图,先抓住它的主干,即Collection和Map. 1.Collection是一个接口,是高度抽象出来的集合,它包含了集合的基本操作和属性.C ...