我正在尝试在后端创建一个带有Neo4j和Django的REST API.
问题是,即使我使用Neo4Django的Django模型,我也不能使用像Tastypie或Piston这样的框架,通常将模型序列化为JSON(或XML).
对不起,如果我的问题令人困惑或不清楚,我是webservices的新手.
谢谢你的帮助
编辑:所以我开始使用Tastypie并按照本页面的教程进行操作http://django-tastypie.readthedocs.org/en/latest/tutorial.html.我正在寻找在浏览器中显示Neo4j JSON响应,但当我尝试访问时,http://127.0.0.1:8000/api/node/?format=json我得到此错误:
{"error_message": "'NoneType' object is not callable", "traceback": "Traceback (most recent call last):\n\n File \"/usr/local/lib/python2.6/dist-packages/tastypie/resources.py\", line 217, in wrapper\n response = callback(request, *args, **kwargs)\n\n File \"/usr/local/lib/python2.6/dist-packages/tastypie/resources.py\", line 459, in dispatch_list\n return self.dispatch('list', request, **kwargs)\n\n File \"/usr/local/lib/python2.6/dist-packages/tastypie/resources.py\", line 491, in dispatch\n response = method(request, **kwargs)\n\n File \"/usr/local/lib/python2.6/dist-packages/tastypie/resources.py\", line 1298, in get_list\n base_bundle = self.build_bundle(request=request)\n\n File \"/usr/local/lib/python2.6/dist-packages/tastypie/resources.py\", line 718, in build_bundle\n obj = self._meta.object_class()\n\nTypeError: 'NoneType' object is not callable\n"}
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
api.py文件:
class …Run Code Online (Sandbox Code Playgroud) 我正在为我的应用程序构建一个REST API,它使用Tastypie使用NoSQL db(Neo4j).
所以我覆盖了类的一些主要方法tastypie.resources.Resource,并且目前正在努力实现def obj_get_list(self, request=None, **kwargs):应该返回对象列表.
实际上,我想通过url(类似的东西http://127.0.0.1:8000/api/airport/?query='aQuery')将参数传递给此方法,然后根据此参数执行查询.
问题是请求是None这样我无法得到它的参数!
打印kwargs变量时,我看到:
{'bundle': <Bundle for obj: '<testNeo4Django.testapp.api.Airport object at 0x9d829ac>' and with data: '{}'>}
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助