Reference: http://blog.csdn.net/seele52/article/details/14105445 译序:虽然本文号称是"hello world式的教程"(这么长的hello world?!),内容上也确实是Django Rest Framework和AngularJS能做出来的相对最简单的东西了,但是鉴于Django, Django Rest Framework和AngularJS本身的复杂程度,本文还是比较适合对于这几个构架还是需要有一点基础性了解的小…
转载自:http://blog.kevinastone.com/getting-started-with-django-rest-framework-and-angularjs.html A ReSTful API is becoming a standard component of any modern web application. The Django Rest Framework is powerful framework for developing ReST endpoints…
(转自https://www.cnblogs.com/derek1184405959/p/8768059.html)(有修改) 接下来开始引入django resfulframework,体现它的强大之处 一.首先,按照以前的做法,如果我们想把商品列表打包成JSON数据显示在首页,就是: 1.写view函数 # goods/view.py from django.views.generic import View from goods.models import Goods class Good…
(form: http://www.cnblogs.com/derek1184405959/p/8886796.html 有修改) 十四.social_django 集成第三方登录 1.申请应用 进入微博开放平台,首先要经过认证,然后才可以创建应用 地址:http://open.weibo.com/authentication 写上应用的名字,创建好后,会有个“App Key”,这个非常重要 OAuth2.0 授权设置 正常情况下,必须经过审核才可以让第三方登录,我们可以先用测试模式来完成. (…
(from:https://www.cnblogs.com/derek1184405959/p/8877643.html  有修改) 十三.首页.商品数量.缓存和限速功能开发 首先把pycharm环境改成本地的,vue中local_host也改成本地 1.轮播图接口实现 (1)goods/serializer class BannerSerializer(serializers.ModelSerializer): ''' 轮播图 ''' class Meta: model = Banner fi…
(from:http://www.cnblogs.com/derek1184405959/p/8859309.html) 十二.支付宝沙箱环境配置 12.1.创建应用 进入蚂蚁金服开放平台(https://open.alipay.com/platform/home.htm),登录后进入管理中心-->>应用列表  创建应用 创建应用后会有一个appid.还需要提交信息进行审核.微信支付和支付宝支付都是要求企业认证才可以完成的,个人开发不可以,所以我们需要用 沙箱环境,它可以让我们不具备这些应用或…
(form:http://www.cnblogs.com/derek1184405959/p/8862569.html) 十一.pycharm 远程代码调试 第三方登录和支付,都需要有服务器才行(回调url),我们可以用pycharm去远程调试服务器代码 服务器环境搭建 以全新阿里云centos7系统为例: 11.1.阿里云安全组配置 快速创建规则,选好常用端口,授权对象,确定就可以了 还要添加一个安全组规则,设置端口范围,授权对象,点确定 ssh连接 yum install openssh-s…
(PS:部分代码和图片来自博客:http://www.cnblogs.com/derek1184405959/p/8813641.html.有增删) 一.用户登录和手机注册 1.drf的token功能 (前言:为什么有了session了,还要用token呢?因为每次认证用户发起请求时,服务器需要去创建一个记录来存储信息.当越来越多的用户发请求时,内存的开销也会不断增加.)之前用django做的网站登录都会加上csrf-token防止跨站攻击,但此次的项目是前后端分离的,而且用户可以选择在手机上登…
(PS:转载自http://www.cnblogs.com/derek1184405959/p/8810591.html  有修改) 一.drf的过滤 (1)添加到app里面 INSTALLED_APPS = [ 'django_filters', ] (2)新建filter.py 自定义一个过滤器 # goods/filters.py import django_filters from .models import Goods class GoodsFilter(django_filters…
首先,这系列随笔是我个人在学习Bobby老师的Django实战项目中,记录的觉得对自己来说比较重要的知识点,不是完完整整的项目步骤过程....如果有小伙伴想找完整的教程,可以看看这个(https://www.cnblogs.com/derek1184405959/p/8768059.html) 一.配置Mysql setting.py中的设置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'mxs…
十.购物车.订单管理和支付功能 1.添加商品到购物车 (1)trade/serializer.py 这里的serializer不继承ModelSerializer,是因为自己写的Serializer更加灵活,因为购物车在添加相同数据的时候,是不能报错的,而如果继承ModelSerializer ,在model.py的ShoppingCart里面需要定义unique_together,这在mixins.CreateModelMixin里的create方法的is_valid的时候,如果记录里面已经有…
(部分代码来自https://www.cnblogs.com/derek1184405959/p/8836205.html) 九.个人中心功能开发 1.drf的api文档自动生成 (1) url #drf文档,title自定义 path('docs',include_docs_urls(title='火影忍者')), 访问:http://127.0.0.1:8000/docs  就可以自动生成 (2)drf文档的优点: 自动生成 文档里可以做交互和测试 可以生成js,shell和python代码…
一.viewsets实现商品详情页接口 (1)商品详情页只需要多继承一个类(mixins.RetrieveModelMixin)就可以了,(它的功能就是展示商品详情) class GoodsListViewSet(mixins.ListModelMixin, mixins.RetrieveModelMixin,viewsets.GenericViewSet): (2)商品轮播图实现 商品轮播图是一个外键(因为轮播图的像素比普通的商品图片高,所以单独做成外键),序列化外键用嵌套的方法来实现 #轮播…
django 刚接触,想做一些restful api , google了一下,发现有现成的框架.Django REST framework. 对使用做下记录: 安装 从http://django-rest-framework.org/下载,解压后$sudo python setup.py install…
利用 Django REST framework 编写 RESTful API Updateat 2015/12/3: 增加 filter 最近在玩 Django,不得不说 rest_framework 真乃一大神器,可以轻易的甚至自动化的搞定很多事情,比如: 自动生成符合 RESTful 规范的 API 支持 OPTION.HEAD.POST.GET.PATCH.PUT.DELETE 根据 Content-Type 来动态的返回数据类型(如 text.json) 生成 browserable…
django rest framework 入门1-序列化 Serialization 分类: Python 2013-01-22 22:24 11528人阅读 评论(0) 收藏 举报 djangopythonrest framework ************************************ 广告时间: 海淘导航网站推荐:海淘库:http://www.haitaocool.com/ 需要的请收藏哦 ************************************ 1.…
Django-Rest-Framework 教程: 4. 验证和权限 作者: Desmond Chen, 发布日期: 2014-06-01, 修改日期: 2014-06-02 到目前为止, 我们的API并未指明哪些人有权限编辑或删除snippet, 接下来我们要实现: 为snippet增加创建者 特定用户才能创建snippet snippet创建者才能更新或删除该snippet 未授权用户只能查看 1. 为snippet model增加field 我们现为snippet model增加两个fie…
django rest framework csrf failed csrf token missing or incorrect REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': ('rest_framework.authentication.TokenAuthentication',)} or MIDDLEWARE_CLASSES = ( 'store.disable.DisableCSRF',) disable.py class Di…
本文更应该叫做Android如何模拟浏览器访问Django服务器后台. 环境为: Android通过HttpClient访问服务器,从Django中获取json数据,解析显示在UI界面上. 问题为: 1.需要登录才可以访问json数据,否则会提示权限不够 登录,也就是把用户名和密码放在请求的参数中呗,但是问题是其中会包含一个csrftoken个东西,问题就不好玩了.每次访问登录界面,都会由服务器生成一个csrftoken,放在浏览器的cookie中,登录动作中,服务器会校验cookie中的csr…
在Django中使用基于类的视图(ClassView),类中所定义的方法名称与Http的请求方法相对应,才能基于路由将请求分发(dispatch)到ClassView中的方法进行处理,而Django REST framework中可以突破这一点,通过ViewSets可以实现自定义路由. 创建一个ViewSets 为get_stocks方法添加list_route装饰器,url_path参数是暴露在外的接口名称 class StockViewSet(viewsets.ModelViewSet):…
从这一点开始,我们将真正开始覆盖REST框架的核心.我们来介绍几个基本的构建块. 请求对象REST框架引入了Request扩展常规的对象HttpRequest,并提供更灵活的请求解析.Request对象的核心功能是request.data属性,这与request.POST使用Web API 相似但更有用. request.POST # Only handles form data. Only works for 'POST' method. request.data # Handles arbi…
建立环境 在我们做任何事情之前,我们将使用virtualenv创建一个新的虚拟环境.这将确保我们的包配置与我们正在开展的任何其他项目保持良好的隔离. virtualenv envsource env/bin/activate 现在我们在一个virtualenv环境中,我们可以安装我们的包的要求. pip install django pip install djangorestframework pip install pygments # 我们将使用这个让代码突出显示 注意:要随时退出virt…
Django REST framework是一个基于Django的框架,REST framework又是怎么反向生成url的呢?? 在前面的例子中,知道在REST framework中有6种版本控制的方式,进入任意一种版本控制的源码中, class QueryParameterVersioning(BaseVersioning): """ GET /something/?version=0.1 HTTP/1.1 Host: example.com Accept: applic…
版本 新建一个工程Myproject和一个app名为api (1)api/models.py from django.db import models class UserInfo(models.Model): USER_TYPE = ( (1,'普通用户'), (2,'VIP'), (3,'SVIP') ) user_type = models.IntegerField(choices=USER_TYPE) username = models.CharField(max_length=32,u…
一.项目介绍 1.1.掌握的技术 Vue + Django Rest Framework 前后端分离技术 彻底玩转restful api 开发流程 Django Rest Framework 的功能实现和核心源码分析 Sentry 完成线上系统的错误日志的监控和告警 第三方登录和支付宝支付的集成 本地调试远程服务器代码的技巧 1.2.课程系统构成 vue前端项目 django rest framework 系统实现前台功能 xadmin后台管理系统 vue部分: API 接口 Vue 组件 与a…
四.xadmin后台管理 4.1.xadmin添加富文本插件 (1)xadmin/plugins文件夹下新建文件ueditor.py 代码如下: # xadmin/plugins/ueditor.py import xadmin from xadmin.views import BaseAdminPlugin, CreateAdminView, ModelFormAdminView, UpdateAdminView from DjangoUeditor.models import UEditor…
五.商品列表页 5.1.django的view实现商品列表页 (1)goods/view_base.py 在goods文件夹下面新建view_base.py,为了区分django和django rest framework的view 利用Django的view实现返回json数据 # goods/view_base.py from django.views.generic import View from goods.models import Goods class GoodsListView…
六.商品类别数据展示 6.1. 商品类别数据接口 (1)商品分类有两个接口: 一种是全部分类:一级二级三级 一种是某一类的分类以及商品详细信息: 开始写商品分类的接口 (2)序列化 给分类添加三级分类的serializer goods/serializers.py from rest_framework import serializers from .models import Goods,GoodsCategory class CategorySerializer3(serializers.…
十三.首页.商品数量.缓存和限速功能开发  13.1.轮播图接口实现 首先把pycharm环境改成本地的,vue中local_host也改成本地 (1)goods/serializer class BannerSerializer(serializers.ModelSerializer): ''' 轮播图 ''' class Meta: model = Banner fields = "__all__" (2)goods/views.py class BannerViewset(mix…
本节内容 Django rest framework 安装 Django rest framwwork 环境配置 简单举例说明 Django中使用 rest framework 1.1 安装 Django rest framework 建立新的环境    可以忽略 virtualenv env source env/bin/activate 安装 djangorestframework 模块 pip install django pip install djangorestframework p…