[英]piston-django how many methods should a single handler contain
我一直在为要映射到url文件的每个方法构建处理程序类。 我的方法正确还是错误? 因为我似乎没有找到一种将资源映射到所有都映射到整个类的方法的方法。
问候,
这些文档看起来非常清晰https://bitbucket.org/jespern/django-piston/wiki/Documentation#!resources
from piston.handler import BaseHandler
from myapp.models import Blogpost
class BlogpostHandler(BaseHandler):
allowed_methods = ('GET',)
model = Blogpost
def read(self, request, post_slug):
...
通过Piston,您可以将资源映射到模型,这样做将为您带来很多繁重的工作。
资源可以只是一个类,但是通常您需要定义以下4种方法中的至少一种:
read
是在GET请求上调用的,永远不要修改数据(幂等)。在POST上调用
create
并创建新对象,并应返回它们(或rc.CREATED
。在PUT上调用
update
,并且应该更新现有产品并返回它们(或rc.ALL_OK
。
delete
是在DELETE上调用的,应该删除现有对象。 应该不返回任何内容,而只是rc.DELETED
。
也是https://bitbucket.org/jespern/django-piston/wiki/Documentation#!mapping-urls
在urls.py中:
from django.conf.urls.defaults import *
from piston.resource import Resource
from mysite.myapp.api.handlers import BlogpostHandler
blogpost_handler = Resource(BlogpostHandler)
urlpatterns = patterns('',
url(r'^blogpost/(?P<post_slug>[^/]+)/', blogpost_handler),
url(r'^blogposts/', blogpost_handler),
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.