2015-01-09 23 views
12

Django(1.7.1)でリアルタイムのチャットアプリケーションを構築しようとしています。私はRedisとishout.jsをインストールする必要があったようです。そこで、私は指示に従ってインストールしました。ImportErrorを解決する方法:Djangoの名前simplejsonをインポートできません

ジャンゴでプロジェクトを行った後、私はINSTALLED_APPSの下で 'drealtime' を入れて、入れ:

'drealtime.middleware.iShoutCookieMiddleware' 

を右上:

'django.contrib.sessions.middleware.SessionMiddleware' 

MIDDLEWARE_CLASSESの下で、それは言っていたよう。そして、私は

python manage.py startapp example 

のようなコマンドを置くが、それでも私は、このインポートエラーメッセージを持っている:

Traceback (most recent call last): 
    File "manage.py", line 10, in <module> 
    execute_from_command_line(sys.argv) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line 
    utility.execute() 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/__init__.py", line 354, in execute 
    django.setup() 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/__init__.py", line 21, in setup 
    apps.populate(settings.INSTALLED_APPS) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/apps/registry.py", line 85, in populate 
    app_config = AppConfig.create(entry) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/apps/config.py", line 87, in create 
    module = import_module(entry) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module 
    __import__(name) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/drealtime/__init__.py", line 4, in <module> 
    from django.utils import simplejson as json 

私はDjangoの公式サイトで検索した後、私はのsimplejsonがもはや新しいジャンゴから使用され、除去される見つかりません。なぜこれが起こっているのか分かりません。 この問題とこの問題に対処するための可能な救済に関するフィードバックをお寄せください。

答えて

14

django-realtimeの旧式のバージョンを使用しています。

は彼ら fixed the 1.7 compatibility、最新のバージョンにアップグレードし

pip install django-realtime --upgrade 

エラーが解決しない場合は、githubの、masterブランチから直接インストール:

FYI
$ pip install git+https://github.com/anishmenon/django-realtime.git --upgrade 

を、修正を:

try: 
    from django.utils import simplejson as json 
except: 
    import simplejson as json 

裸例外句 - 禅プログラマーi nsideが囁いて私を殺しているexcept ImportErrorexcept ImportErrorexcept..

+0

申し訳ありませんが、私はアプリケーションを作成しようとすると、このエラーが表示され、view.pyファイルを持つことができないため、まだview.pyファイルがありません。今のところ__init__.pyファイルは空です。 –

+0

@SungpahLee nono、 'django-realtime'パッケージを更新して、最新バージョンの' pip install django-realtime --upgrade'に再インストールしてください。 – alecxe

+0

rescomp-14-285794:realpro sungpah $ pip install django-realtime --upgrade 要件はすでに最新です:/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/のdjango-realtimeが必要です。サイトパッケージ クリーンアップ... rescomp-14-285794:realpro sungpah $ –

2

これはアプリケーション自体のバグです。残念ながらthe error still persists in the master branchはgitです。

エラーを修正するためのプルリクエストを提出しました。その間にあなたは以下を行うことができます:

pip uninstall django-realtime 
pip install git+https://github.com/burhan/[email protected] 
+0

Cool。この問題に関する本当に素晴らしいアドバイスをありがとうと、一般的な問題がすぐに解決されることを願っています –

5

私は上記の答えは回避策だと思います。

Djangoはのsimplejsonでdjango.utilsに同梱するために使用されるが、これはPythonの標準ライブラリで利用可能Django 1.5 JSON ためモジュールで削除されました。

from django.utils import simplejsonの代わりにimport jsonになりましたので、simplejsonメソッドが呼び出されたときに必要な変更を加えてください。

関連する問題