drf-schema-adapter, 使用 Django 与前端库和框架干燥器进行

分享于 

5分钟阅读

GitHub

  繁體 雙語
Making using Django with frontend libraries and frameworks DRYer
  • 源代码名称:drf-schema-adapter
  • 源代码网址:http://www.github.com/drf-forms/drf-schema-adapter
  • drf-schema-adapter源代码文档
  • drf-schema-adapter源代码下载
  • Git URL:
    git://www.github.com/drf-forms/drf-schema-adapter.git
    Git Clone代码到本地:
    git clone http://www.github.com/drf-forms/drf-schema-adapter
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/drf-forms/drf-schema-adapter
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    DRF-schema-adapter Build Status

    drf-schema-adapter 是一组用于直接声明API终结点的工具,它在 Django 中声明新的ModelAdmin 并导出对应的前端框架。

    兼容矩阵

    DRF-schema-adapter 与以下矩阵兼容

    Py 2.7 3.4 Py 3.5
    Django 1.8-3.6 3.3-3.6 3.3-3.6 3.3-3.6 3.3
    Django 1.9DRF 3.3 +DRF 3.3 +DRF 3.3 +DRF 3.3 +
    Django 1.10DRF 3.4 +DRF 3.4 +DRF 3.4 +DRF 3.4 +
    Django 1.11DRF 3.4 +DRF 3.4 +DRF 3.4 +DRF 3.4 +
    Django 2.0不是不是DRF 3.7 +DRF 3.7 +

    安装

    带pip的

    pip install drf-schema-adapter

    来自源的

    在源目录中:

    python setup.py install

    演示应用程序

    你可以看到一个运行于 https://djembersample.pythonanywhere.com/的演示应用程序。

    基本用法

    首先,你需要在 urls.py 文件中导入默认的EndpointRouter。

    from drf_auto_endpoint.router import router

    同样,也可以将它的url添加到 urlpatterns 中的urls.py 中,同样也可以在中使用 DefaultRouter

    
    urlpatterns = [
    
    
    . . .
    
    
     url(r'^api/', include(router.urls)),
    
    
    . . .
    
    
    ]
    
    
    
    

    基于的Prototype设计

    获取工作端点的快速方法是使用路由器来建立一个模型。 register 接受与该终结点关联的url的可选关键字参数。 默认情况下,端点的url将为 app_label/verbose_name_plural

    
    from drf_auto_endpoint.router import router
    
    
    from my_app.models import MyModel, OtherModel
    
    
    
    router.register(MyModel)
    
    
    router.register(OtherModel, url='my_custom_url')
    
    
    
    urlpatterns = [
    
    
     url(r'^api/', include(router.urls)),
    
    
    ]
    
    
    
    

    OPTIONS 调用添加架构信息

    REST REST框架提供了自定义那些调用的能力,这得益于元数据类的定义。

    设置DRF以使用类的DRF-schema-adapter 元数据one获取架构信息:

    
    ## settings.py
    
    
    
    ...
    
    
    REST_FRAMEWORK = {
    
    
     'DEFAULT_METADATA_CLASS': 'drf_auto_endpoint.metadata.AutoMetadata',
    
    
    }
    
    
    
    

    导出到前端

    首先将 'export_app' 添加到设置的INSTALLED_APPS 中,然后运行:

    ./manage.py export --adapter_name EmberAdapter samples/products

    完整文档

    要获得更完整的文档,请参见: http://drf-schema-adapter.readthedocs.io

    相关项目

    Contibuting指南行

    如果你想为 DRF-schema-adapter,那么你就are这么做了。 为了为本项目提供丰富的经验,请遵循以下指南行:

    • 首先,使用你自己的GitHub帐户 fork,在你自己的存储库上构建代码并提交一个请求。
    • 在提供错误修复或者新特性之前,先创建一个问题,解释问题/需要是什么。 提交请求请求时,请确保引用原始问题。
    • 对于你所提供的任何代码,请确保遵循PEP8推荐( 软线路限制 100,硬限制 120 )。
    • 对于错误修复,请先编写一个测试,该测试将用当前代码失败并使用你的补丁。 为了便于评估,请在 2个独立提交中
    • 对于新特性,如果你的功能可以作为第三方应用程序(。类似新适配器),请不要向这个 repo 发布。 我们将确保在这里自述文件中添加到你的应用程序的链接。
    • 阅读并尊重执行的代码。

    待办事项

    • 编写更好的文档
    • 编写更多/更好的测试
    • 启用管理员注册机制
    • 安装django-model-translation时添加语言信息

    许可信息可用在这里。

    贡献者的行为准则在这里是可用的,这里是 请注意,这里 COC 将强制执行。


      framework    Frontend  框架  DRY  
    相关文章