simpleapi是一个用于制作应用程序接口的python包。每个人都可以像Django模型一样创建API方法。

simple_api的Python项目详细描述


simpleapi是一个用于制作应用程序接口的python包。每个人都可以使api方法与django模型一样。

Github repo

安装

使用pip安装:

pip install simple_api

…或从github克隆项目:

https://github.com/san4ezy/simple_api.git
  1. simple_api应用程序添加到INSTALLED_APPS设置:

    INSTALLED_APPS = (
        ...
        'simple_api',
    )
    
  2. 将包导入到“url.py”并将simpleapi连接到您的项目:

    import simple_api
    simple_api.connect()
    
  3. 将simpleapi模式添加到urlpatterns

    url(r'api/', include(simple_api.urls)),
    
  4. 将名为api_models.py的文件生成到应用程序中,导入simpleapi包并为api创建自定义类

示例

让我们看一个如何使用simpleapi的快速示例。

我们将创建一些类,这些类使用simpleapi为项目的api生成方法。

编辑“api-models.py”:

import simple_api
from main.models import *

# This class makes a url http://your-domain/api/getprojects/
class GetProjects(simple_api.SimpleAPI):
    filter = simple_api.CharVariable(blank=True, default='active', choices=['all', 'active', 'not_active', ])
    mode = simple_api.CharVariable(blank=True, default='object', choices=['object', 'name', ])
    description = u"Getting projects data"

    def method(self):
        queryset = None
        if self.filter.case(0):
            queryset = Project.objects.all()
        elif self.filter.case(1):
            queryset = Project.objects.filter(active=True)
        elif self.filter.case(2):
            queryset = Project.objects.filter(active=False)
        if self.mode.case(0):
            return queryset
        elif self.mode.case(1):
            return [(x.pk, x.name, ) for x in queryset]

# This class makes a url: http://your-domain/api/projects__<method>/ , where "method" should be "get", "make", "edit" or "delete".
class Projects(simple_api.ModelAPI):
    model = Project

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Frida Java windows的逆向工程   Java术语中的对象初始化   java在何处放置maven参数化junit输入xml文件   java如何在Swift中创建以日期为键、布尔值为值的字典/地图?   java Velocity动态属性访问   java Maven站点我如何找到它们?   java JavaFX按钮在显示阶段时显示为选中状态   文件io字符串方法java赋值   java为SOAP头生成证书   java Android更改EditText的setError弹出消息的背景色   java格式存储为字符串的数字   java Testcontainers+dbrider:无法清除表X,消息:启用自动提交时无法提交。,原因:无效   java程序应该可以运行,但仍然没有输出?   Java在列表末尾添加一个节点?   java类对象中的默认构造函数做什么?   java如何更快地从映射返回键和值?