django-piston は、ハンドラー フェーズに到達する前に、リクエスト オブジェクトにデータ属性を作成するようです。このデータは、たとえば、request.data にアクセスすることにより、PUT および POST ハンドラーで使用できます。
ただし、DELETE ハンドラーでは、データは使用できません。
このデータを利用できるように django-piston を変更したいのですが、どこから始めればよいかわかりません。何か案は?データ属性の由来は?
django-piston は、ハンドラー フェーズに到達する前に、リクエスト オブジェクトにデータ属性を作成するようです。このデータは、たとえば、request.data にアクセスすることにより、PUT および POST ハンドラーで使用できます。
ただし、DELETE ハンドラーでは、データは使用できません。
このデータを利用できるように django-piston を変更したいのですが、どこから始めればよいかわかりません。何か案は?データ属性の由来は?
私はこれを自分で解決しました。短いハッキーな答えは、メソッド
translate_mime(request)
データ属性を使用できるようにするには、要求時にピストンから utils を実行する必要があります。
これに対する全体的な修正は、resource.py 内の Piston ソース コード自体を変更して、DELETE アクションの translate_mime メソッドを実行することです。現在のところ、PUT と POST に対してのみ自動的に行われます。
しかし、私が言ったように、実際には実際のハンドラー メソッドで translate_mime を手動で呼び出すだけで問題なく動作します。