2

Django-Piston で、エラー処理を行う良い方法はありますか? (呼び出し元が必要な GET パラメーターを省略した場合、またはパラメーターが無効な場合に 400 ステータス コードを返すのと同じように。)

4

1 に答える 1

4

Django-piston は HTTP ステータス コードを尊重し、デフォルトで一般的なエラー (auth など) を処理しますが、piston.utils から rc を使用して新しい例外やステータスをスローすることもできます。

例えば:

from django.contrib.auth.models import User
from piston.handler import AnonymousBaseHandler
from piston.utils import rc

class AnonymousUserHandler(AnonymousBaseHandler):
    allowed_methods = ('GET', )
    fields = ('id', 'username',)

    def read(self, request):
        try:
            user = User.objects.get(username=request.GET.get('username', None))
            return user
        except Exception:
            resp = rc.NOT_FOUND
            resp.write(' User not found')
            return resp

https://bitbucket.org/jespern/django-piston/wiki/Documentation#!helpers-utils-decoratorsですべてのユーティリティを確認してください。

于 2011-02-21T15:00:39.470 に答える