我正在尝试将TastyPie添加到我的Django项目中,以构建RESTful API。我正在使用Django 1.8.2。我在跟踪官方教程。我创建了一个资源:
# myapp/api.py
from tastypie.resources import ModelResource
from myapp.models import Entry
class RecipeResource(ModelResource):
class Meta:
queryset = Entry.objects.all()
# urls.py
from django.conf.urls import include, url
from django.contrib import admin
from myapp.api import RecipeResource
recipe_resource = RecipeResource()
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^api/', include(recipe_resource.urls)),
]我认为问题不存在于我的代码中,因为它基本上是本教程中的复制和粘贴。执行导入时发生错误:
from myapp.api import RecipeResource我是姜戈和TastyPie的新手。可能是TastyPie不适用于Django 1.8.2吗?
错误:
File "/Users/rafalsroka/Documents/Pthn/Recipes/recipes-backend/lib/python2.7/site-packages/tastypie/resources.py", line 1740, in <module>
class BaseModelResource(Resource):
File "/Users/rafalsroka/Documents/Pthn/Recipes/recipes-backend/lib/python2.7/site-packages/tastypie/resources.py", line 2210, in BaseModelResource
@transaction.commit_on_success()
AttributeError: 'module' object has no attribute 'commit_on_success'发布于 2015-06-30 17:59:10
看起来是TastyPie 缺乏对Django 1.8.2的支持。commit_on_success已在此版本的Django中删除。
我想使用最新的版本,所以我转而使用Django Rest框架。
https://stackoverflow.com/questions/31143698
复制相似问题