很清楚如何创建从 URL 正则表达式分派的 URLPattern:
(r'^books/$', books),
where books可以根据请求方法进一步调度:
def books(request):
if request.method == 'POST':
...
else:
...
我想知道是否有一种惯用的方法将请求方法包含在 URLPattern 中,将所有调度/路由信息保留在单个位置,例如:
(r'^books/$', GET, retrieve-book),
(r'^books/$', POST, update-books),
(r'^books/$', PUT, create-books),
它作为单一视图方法完成的原因是您通常呈现某种页面内容作为您要提交的表单的上下文。
不管怎样,我回复它的原因是:从你的示例 URLConf 来看,你似乎正在使用 Django 构建一个 REST Web 服务——如果是这样的话,你可能真的会从使用相当好的姜戈活塞 http://bitbucket.org/jespern/django-piston/wiki/Home自动创建您的资源/集合。它使用基于类的处理程序,根据请求中的 HTTP 方法自动重定向到适当的方法(在您的情况下为 get-books、update-books、create-books)
更新(四年后!)而 django-piston 仍然存在(并且有效),Django REST 框架 http://www.django-rest-framework.org/如今,这是一个更加复杂、有记录且扩展的选择。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)