2016-10-18 16 views
1

FileFieldを持つモデルでHyperlinkedModelSerializerを使用してDRFにファイルをアップロードすることはできますか?Django RESTフレームワークとcoreapiでファイルをアップロード

私はutilsパッケージのcoreapi Fileクラスを使用していますが、coreapiはFileオブジェクトがJSONプリミティブ(sic)ではないと不平を言っています。

スキーマのように見えるコードを見てみると、エンコーディングはマルチパート形式でなければなりません。

このようなファイルをDRFにアップロードして、FileFieldを搭載したモデルの実際の例はどこにありますか?

答えて

4

だから... the codeencodingのパラメータはclient.actionになりました。

multipart/form-dataに設定すると、ファイルは正しくエンコードされ、JSONフィールドとしてではなくボディパラメータとして検証されます。

with open('/Users/Jonathan/Desktop/test.png', 'rb') as f: 
    client.action(schema, ['incidents', 'create'], params={ 'file': utils.File('test.png', f) }, encoding="multipart/form-data") 

物語&hellipの残りのためtransports/http.pyutils.pyを通じて読む;.

+0

これは正しいので、回答として選択する必要があります。 – Pepedou

関連する問題