0

私は cgi 環境で python を使用しており、mvc デザイン パターンを使用しています。
だから私は現在、次の階層を持っています:

  main.py
  mvc/                         
  __init__.py               
  model/                  
          __init__.py
          session_initiator.py
  view/
          __init__.py
  controller/
          __init__.py
          interface.py

session_initiator.py で session_initiator クラスを定義しました
interface.py 内に session_initiator クラスをインポートしようとしています interface.py
の次のコードは成功しています:

 from .. import model

しかし、次のようなものを追加しようとすると:

from model import session_initiator

モデルがモジュールではないというエラーが表示されます。


sys.pathを編集できない環境を使用しているため、sys.path に関する解決策を参照しないでください。

ありがとう。

編集:すべての初期化ファイルは空です。

編集:行を次のように変更しました:

from  mvc.model import session_initator

そして、この行は機能します!しかし、今しようとすると:

self.session_init = session_initiator() 

次のエラーが表示されます。

 TypeError: 'module' object is not callable
4

1 に答える 1

0

インポートは、そのような既存の名前に基づいて構築されません。

from ..model import session_initiator

また、session_initiatorクラスではなくモジュールになりました。そのモジュールから何かをインポートするつもりなら、そうしなければなりません。

from ..model.session_initiator import session_initiator
于 2013-06-21T14:30:45.930 に答える