修补tastypie 0.12系列以适应South。
项目描述
自2010年以来为Django应用创建美味的API。
目前处于测试版(v0.12.2),但已在多个网站上积极用于生产。
要求
核心
Python 2.6+ 或 Python 3.3+
Django 1.5到Django 1.8
dateutil (http://labix.org/python-dateutil) >= 2.1
格式支持
XML: lxml 3 (http://lxml.de/) 和 defusedxml (https://pypi.python.org/pypi/defusedxml)
YAML: pyyaml (http://pyyaml.org/)
二进制plist: biplist (http://explorapp.com/biplist/)
可选
HTTP摘要认证:python3-digest (https://bitbucket.org/akoha/python-digest/)
它看起来像什么?
一个基本的例子看起来像
# myapp/api.py
# ============
from tastypie.resources import ModelResource
from myapp.models import Entry
class EntryResource(ModelResource):
class Meta:
queryset = Entry.objects.all()
# urls.py
# =======
from django.conf.urls.defaults import *
from tastypie.api import Api
from myapp.api import EntryResource
v1_api = Api(api_name='v1')
v1_api.register(EntryResource())
urlpatterns = patterns('',
# The normal jazz here then...
(r'^api/', include(v1_api.urls)),
)
这为您提供了一个完全工作、读写API,用于支持所有CRUD操作的Entry模型,并以RESTful的方式工作。JSON/XML/YAML支持已经存在,并且很容易添加相关数据/认证/缓存。
您可以在http://django-tastypie.readthedocs.org/的文档中找到更多内容。
为什么选择Tastypie?
在其他更知名的Django API框架中也有其他选择。您需要评估可用的选项并自行决定。话虽如此,这里是一些选择Tastypie的常见原因。
您需要一个既符合RESTful标准又很好地使用HTTP的API。
您希望支持深层关系。
您不希望必须编写自己的序列化器来生成正确的输出。
您想要一个具有少量魔法、非常灵活且很好地映射到问题域的API框架。
您想要/需要与JSON(YAML也在其中)同等对待的XML序列化。
您想要支持我感知到的NIH综合症,这与其说是NIH,不如说是试图帮助朋友/同事。
参考资料
安全性
Tastypie致力于提供灵活且安全的API,并考虑了许多安全特性和选项进行设计。由于API的复杂性和不断发现新的攻击向量和漏洞,没有任何软件可以免疫于安全漏洞。我们依靠我们的社区来报告并帮助我们调查安全问题。
如果您发现了一个安全漏洞,请不要在GitHub上创建问题。相反,请给我们发送电子邮件至 tastypie-security@googlegroups.com
然后我们将共同调查和解决问题,以便我们可以宣布解决方案以及漏洞。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源代码分发
构建分发
哈希 对于 django_tastypie_legacy-0.12.2.post2-py2.py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 47b9691230a4e0bc8e279ae71aa2324e59e37f670af82d2fc8e00c873300dee0 |
|
MD5 | b52b64a6af4c7ee26d7d65972203cc98 |
|
BLAKE2b-256 | 29c8b3f243c9671ec45f383fa3eca029bb0128ea0432588b8ea74a48c8302a09 |