我理解并使用本指南http://docs.cherrypy.org/dev/progguide/REST.html
在我的应用程序中使用RESTful路由有没有人知道如何添加嵌套在第一个中的第二个RESTful资源?
我希望我的代码看起来像这样,但我无法让它工作
import cherrypy
class Pets:
exposed = True
def GET(self, personID, petID):
pass # GET /people/123/pets/333 return pet
def POST(self, personID):
pass # POST /people/123/pets create pet
class People:
pets = Pets()
exposed = True
def GET(self, personID):
pass # GET /people/123 return person
def POST(self):
pass # POST /people create person
config = {
'/people': {
'request.dispatch': cherrypy.dispatch.MethodDispatcher()
}
}
cherrypy.tree.mount(.., '/', config)
答案 0 :(得分:2)
请参阅 cherrypy.popargs 的帮助文档。它弹出路径组件,并将它们作为关键字参数提供给下一个处理程序。在这种情况下,将其用作人力资源上的装饰器,并将宠物资源附加到人力资源。
@cherrypy.popargs('petID')
class Pets:
...
@cherrypy.popargs('personID')
class People:
...