0

私はやや奇妙な問題を抱えています。パッケージのブランチ全体の名前を から変更することにしました

foo.bar.somemodule

foo.django.bar.somemodule

問題は、これが完了した後、次のエラーが発生することです。

Traceback (most recent call last):
  File "/home/workspace/eclipse/foo/src/foo/manage.py", line 2, in <module>
    from django.core.management import execute_manager
ImportError: No module named core.management

今なら、名前を

foo.djangox.bar.somemodule

できます!django という単語に「x」を追加したことに注意してください。

foo.django.bar.somemodule を使用すると、ある種の名前の衝突があるようですが、何が得られますか? それらはdjango自体から分離する必要があります。

私のコードのすべてのインポートは次の形式です

from foo.django.bar.somemodule import someobject
import foo.django.bar.somemodule

編集:最後から2番目のインポートに「x」があることを明確にする

4

1 に答える 1

1

絶対インポートを実行したい状況に陥っていますが、お使いの Python バージョンではデフォルトで実行されません。from __future__ import absolute_import問題のあるファイルの先頭に追加して、Python VM にアクティブ化するように指示します。

于 2011-05-24T03:08:26.613 に答える