Django + SQLAlchemy + RESTful API(tastypie?)

3 投票
2 回答
2198 浏览
提问于 2025-04-17 12:35

我现在在用Django配合SQLAlchemy,想为移动设备做一个简单的API。

我正在考虑不同的Python RESTful API框架,特别是tastypie和piston。

有没有人能告诉我,怎么用这两个模块把资源和SQLAlchemy连接起来?

或者,有没有其他框架更适合和Django+SQLAlchemy一起使用的?

谢谢大家。

2 个回答

2

Tastypie可以和SQLAlchemy一起使用。

你可以看看tastyalchemy @ github - 这是一个很好的起点,教你如何为Tastypie构建一个SQLAlchemy资源。使用它,你可以为SQLAlchemy的ORM类创建一个资源,比如:

class MyORMResource(SQLAlchemyResource):
    class Meta:
        resource_name = 'myorm'
        object_class = MySQLAlchemyORMClass
        allowed_methods = ['get', 'post', 'put', 'delete']

我发现需要实现SQLAlchemyResource.post_detail()才能让更新功能正常工作。我处理会话的方式也不同,所以我改了一些东西。不过,如果你愿意看看tastypie的resource.py,其实很容易就能上手。外键也可以正常使用,不过我还没找到让“一对多”关系正常工作的办法。

3

你可能想看看tastypie文档中的以下页面:

http://django-tastypie.readthedocs.org/en/latest/non_orm_data_sources.html

特别是,里面的riak示例看起来不错,正是你需要实现的那种东西。

撰写回答