私はdjangoとpythonで新しくなりました。私はプロジェクトに統合されたdjango restフレームワークを手に入れることができません。私は順番に私のモデル、シリアライザ、およびAPIを持ってインポートエラー:django.core.handlers.wsgiからインポートします。STATUS_CODE_TEXT
、私は思うが、私は、サーバーを実行しようとすると、私はエラーの文字列を取得:
(PyDevは)C:\ Users \ユーザーPyDevは\ SMRTシステムチェックの実行>のpython manage.py実行サーバ ...
Unhandled exception in thread started by <function wrapper at 0x0000000003FFD278
>
Traceback (most recent call last):
...
File "C:\Python27\Lib\site-packages\rest_framework\generics.py", line 8, in <m
odule>
from rest_framework import views, mixins
File "C:\Python27\Lib\site-packages\rest_framework\views.py", line 14, in <mod
ule>
from rest_framework.response import Response
File "C:\Python27\Lib\site-packages\rest_framework\response.py", line 8, in <m
odule>
from django.core.handlers.wsgi import STATUS_CODE_TEXT
ImportError: cannot import name STATUS_CODE_TEXT
誰もが私が間違っているの何、これを修正したりする方法のアイデアを持っていますか?ありがとう!
- のpython:2.7.14
- ジャンゴ:1.11.6
- 残りのフレームワーク:3.1.1
- virtualenvの:12.1.1
wpercyが正しくSTATUS_CODE_TEXTがあったことを指摘djangoから削除されましたが、コード内のどこからでも明示的に呼び出すわけではありません。私はそれがrest_framework.genericsコードのどこかにあることを意味するでしょうか?
rest_frameworkを間違って使用している可能性はありますか?私のアプローチを更新する必要がありますか?
編集:私はDjangoの残りのフレームワークのチュートリアル以下のゼロから新しいプロジェクトを構築し、私はここで説明するエラーなしでうまくJSONオブジェクトを返すことができるよ...
EDIT:これは、具体的であるように思われます
rest_framework.generics import ListAPIView
EDIT:私はもっと慎重にトレースバックを通して見て、参照がのLib \サイト - パッケージ\私のルートpython27を指したことに気づいwpercyのアドバイス\ rest_frameworkの\応答に基づいて 含めるための呼び出しの結果上記のように8行目の.pyが見つかりました:
from django.core.handlers.wsgi import STATUS_CODE_TEXT
して、行81上:
return STATUS_CODE_TEXT.get(self.status_code, '')
私はこれをどのように修正することができますか?
EDIT: 私は投稿
Link to relevant ticketの下&コメント投稿をwpercyのリンクを発見しました。 Jpadillaは書きました:
を要約すると、我々は、おそらくresponse.pyでのような何かを行うことができるはず:
from django.utils.six.moves.http_client import responses
...
return responses.get(self.status_code, '')
私はgithubの上で閉じられた項目であるという提案にドロップ:
ticket for django-rest-framework Status code
とサーバーは現在実行されます。私はこの古いコードでどうやって終わったのか分かりません。恐らく、私はdjango-rest-frameworkをアンインストールして再インストールして最新のものを確認するべきですが、このコードを削除すると問題は解決しました。
編集:私は別の質問から受け取った回答に基づいて :'Options' object has no attribute 'get_all_related_objects' but I'm already using Django 1.11 私はジャンゴの新しいバージョンで、残りのフレームワークの古いバージョンを使用していたことが分かりました。以下のマークがついた回答を参照してください。
(https://github.com/encode/django-rest-framework/issues/2763) – user2357112
私が今いることがわかり、しかし私は目的コード上のどこにでもwsgi.STATUS_CODE_TEXTを使用していません...どこから参照できますか? –