我目前正在使用Django和SQLAlchemy,并希望为移动设备实现一个(初始阶段简单的)API。
我正在评估不同的Python RESTful API框架,特别是tastypie和piston。
请问有人能指导我如何使用这些模块将资源绑定到SQLAlchemy吗?
或者,是否有其他更适合Django+SQLAlchemy的框架可供选择?
谢谢大家。
我目前正在使用Django和SQLAlchemy,并希望为移动设备实现一个(初始阶段简单的)API。
我正在评估不同的Python RESTful API框架,特别是tastypie和piston。
请问有人能指导我如何使用这些模块将资源绑定到SQLAlchemy吗?
或者,是否有其他更适合Django+SQLAlchemy的框架可供选择?
谢谢大家。
http://django-tastypie.readthedocs.org/en/latest/non_orm_data_sources.html
具体来说,Riak 的例子看起来不错,正是您需要实现的类型。Tastypie可以与SQLAlchemy一起使用。
请查看tastyalchemy @ github - 这是一个很好的开始,了解如何为Tastypie构建一个SQLAlchemyResource。使用它,您可以为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,那么很容易就可以启动和运行。外键也可以使用,尽管我还没有找到一种方法使一对多关系起作用。