3

次のようにレイアウトされた Buildout を使用してセットアップした Django アプリがあります。

/workspace
  /bin
  /src
    /myproject
      settings.py
      /myapp
         views.py
         ...
  bootstrap.py
  buildout.cfg
  setup.py

問題は、私が とmyproject.settingsPythonmyappパスの両方が欲しいということです。myproject.settingsdjangorecipe がインポートできるように、パス上に が必要です。myappそして、いつも書く必要がないように、道を歩みたいと思いimport myproject.myappます。

今のところ、Python パスに/workspace/srcとの両方がありますが、これはハックのように感じられ、互いに親子関係にある 2 つのディレクトリがあるため、解決パターンが混乱する/workspace/src/myproject状況が発生するのではないかと実際に心配しています。import some_module

質問は次のとおりです。

これをレイアウトする受け入れられた方法はありますか?

パスにディレクトリとそのサブディレクトリの 1 つを含めるのは実際には悪いことですか?

4

2 に答える 2

0

buildout.cfgインクルードdevelop = .と、定義した卵が buildout/parts の依存関係として含まれている場合setup.py、setup.py が定義するコード パスは自動的に sys.path に追加されます。コードディレクトリとしてsetup.pyインクルードしていることを確認してください。srcこれを行う1つの方法は次のとおりです。

setup(name=...
...
      packages=find_packages('src'),
      package_dir = {'':'src'},
...
于 2011-08-30T22:43:13.307 に答える