3

私はdjango-pistonを使用しており、manage.py syncdbコマンドを実行すると次の問題が発生します:

Traceback (most recent call last):
  File "./manage.py", line 13, in <module>
    execute_manager(settings)
  File "/home/appfirst/django/django/core/management/__init__.py", line 438, in execute_manager
    utility.execute()
............ lines ommitted ...........
  File "/home/appfirst/django/django/utils/translation/trans_real.py", line 176, in translation
    default_translation = _fetch(settings.LANGUAGE_CODE)
  File "/home/appfirst/django/django/utils/translation/trans_real.py", line 160, in _fetch
    apppath = os.path.join(os.path.dirname(app.__file__), 'locale')
AttributeError: 'module' object has no attribute '__file__'

私の開発環境では、この問題はありません。そこで、django-piston ディレクトリを含むように python パスを設定しました。本番では、ピストンをrpm()にコンパイルしpython setup.py bdist --format=rpm、卵としてインストールすることでピストンをインストールしました/usr/lib/python2.6/site-packages/。これは、開発中にできることを意味します

>>> import piston
>>> piston.__file__
/some/file/path/here

しかし、本番環境では取得します

>>> import piston
>>> piston.__file__
AttributeError: 'module' object has no attribute '__file__'

誰もこれを回避する方法を知っていますか?

4

2 に答える 2

8

これはPiston 0.2.3の既知の問題のようです。このパッチを適用するか、次のようにインストールしてバージョン 0.2.2 を使用することができます。

pip install django-piston==0.2.2
于 2011-11-27T01:10:05.330 に答える
1

私は同じ問題を抱えていましたが、何が原因なのかわかりませんでしたが、それを修正するために、設定でINSTALLED_APPSからピストンアプリのコメントを外し、再び動作し始めたので、ピストンのロードに関係していました. サイト パッケージ ディレクトリからピストンを削除し、再読み込みを試みて、それが役立つかどうかを確認します。

また、私の質問に対する答えを見つけようとしているときに、同様の問題を抱えているサイトをいくつか見つけました。

__init__.pyこのサイトでは、行方不明に関連する問題について説明しています。

http://www.willmer.com/kb/2007/12/attributeerror-module-object-has-no-attribute-blah/

このサイトでは、循環インポートを問題として説明しています。

http://www.answermysearches.com/python-fixing-module-object-has-no-attribute/333/

そして、私が見つけることができない別のものは、卵としてインストールされたアプリからファイルを正しくロードできないことについて言及していました.

于 2011-04-22T16:01:35.240 に答える