帮酷LOGO
0 0 评论
  • 显示原文与译文双语对照的内容
文章标签:Django Rest框架  REST  COL  Collect  framework  extensions  ext    
DRF-extensions is a collection of custom extensions for Django REST Framework

  • 源代码名称:drf-extensions
  • 源代码网址:http://www.github.com/chibisov/drf-extensions
  • drf-extensions源代码文档
  • drf-extensions源代码下载
  • Git URL:
    git://www.github.com/chibisov/drf-extensions.git
  • Git Clone代码到本地:
    git clone http://www.github.com/chibisov/drf-extensions
  • Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/chibisov/drf-extensions
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
  • Django REST框架扩展

    drf扩展是针对 Django REST框架的自定义扩展的集合。

    完整的项目文档在 http://chibisov.github.io/drf-extensions/docs 提供。

    Build StatusPyPI

    要求

    • 测试 python 2.7和 3.4,3.5版本
    • 测试 Django Rest框架从 3.1. x 到 3.5.3版本的版本
    • 测试 Django 从 1.8到 1.10版本

    插件安装:

    
    pip install drf-extensions
    
    
    
    

    一些特性

    • DetailSerializerMixin
    • 高速缓存
    • 条件请求
    • 用于缓存和条件请求的可以自定义密钥构造
    • 嵌套路由
    • 批量操作

    阅读更多的文档文档。

    插件开发

    运行测试:

    
    $ pip install tox
    
    
    $ tox -- tests_app
    
    
    
    

    针对精确环境运行测试:

    
    $ tox -e py27-drf2.3.5 -- tests_app
    
    
    
    

    在运行测试之前重新创建 envs:

    
    $ tox --recreate -- tests_app
    
    
    
    

    传递自定义参数:

    
    $ tox -- tests_app --verbosity=3
    
    
    
    

    使用pdb支持运行:

    
    $ tox -- tests_app --processes=0 --nocapture
    
    
    
    

    运行精确的测试用例:

    
    $ tox -- tests_app.tests.unit.mixins.tests:DetailSerializerMixinTest_serializer_detail_class
    
    
    
    

    从精确模块运行测试:

    
    $ tox -- tests_app.tests.unit.mixins.tests
    
    
    
    

    生成文档:

    
    $ make build_docs
    
    
    
    

    通过监视更改自动构建文档:

    
    $ pip install watchdog
    
    
    $ make watch_docs
    
    
    
    

    开发新功能

    每个新特性应该是:

    • 已经记录
    • 已经测试
    • 已经实现
    • 推送到主仓库

    如何编写文档

    当新特性实现开始时,应该将它放入 development version。 向 Release notes 添加 development version 部分并描述其中的每个新特性。 使用 #anchors 方便导航。

    每个特性都应该具有在当前开发版本中实现的标题和信息。

    例如如果我们刚刚实现 Usage of the specific cache :

    
    ...
    
    
    
    #### Usage of the specific cache
    
    
    
    *New in DRF-extensions development version*
    
    
    
    `@cache_response` can also take...
    
    
    
    ...
    
    
    
    ### Release notes
    
    
    
    ...
    
    
    
    #### Development version
    
    
    
    * Added ability to [use a specific cache](#usage-of-the-specific-cache) for `@cache_response` decorator
    
    
    
    

    发布新版本

    增量版本 rest_framework_extensions/__init__.py 例如:

    
    __version__ = '0.2.2' # from 0.2.1
    
    
    
    

    移动到新版本文档中的所有发行说明。

    添加发行说明部分的日期。

    在文档中全部替换 New in DRF-extensions development version 备注 New in DRF-extensions 0.2.2

    重建文档。

    运行测试。

    使用消息" 0.2.2提交更改"

    为提交添加新标签版本:

    
    $ git tag 0.2.2
    
    
    
    

    按标签向母版推送:

    
    $ git push origin master --tags
    
    
    
    

    不要忘记将 master 合并到 gh-pages 分支并推送到原点:

    
    $ git co gh-pages
    
    
    $ git merge --no-ff master
    
    
    $ git push origin gh-pages
    
    
    
    

    发布到 pypi:

    
    $ python setup.py publish
    
    
    
    


    文章标签:  framework  ext  COL  REST  Collect  collection  extensions  

    Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语