0

パスが正しいように見えても、モジュールをインポートできません。

>>> import cms.middleware.page
Traceback (most recent call last):
  File "<console>", line 1, in <module>
ImportError: No module named middleware.page

Heresは私のパスが大丈夫であることを示しています

>>> for x in sys.path:
...     if x == "/usr/local/lib/python2.7/site-packages":
...         print x
...
/usr/local/lib/python2.7/site-packages

モジュールはこちら

[root@monty codecrab]# ls -l /usr/local/lib/python2.7/site-packages/cms/middleware/page.py
-rw-r--r-- 1 root root 1304 Apr 17 19:49 /usr/local/lib/python2.7/site-packages/cms/middleware/page.py

ここにファイルがあります

[root@monty cms]# pwd
/usr/local/lib/python2.7/site-packages/cms
[root@monty cms]# ls -l __init__.py middleware/__init__.py middleware/page.py
-rw-r--r-- 1 root root   47 Apr 17 19:49 __init__.py
-rw-r--r-- 1 root root    0 Apr 17 19:49 middleware/__init__.py
-rw-r--r-- 1 root root 1304 Apr 17 19:49 middleware/page.py

何か案は ?

4

1 に答える 1

1

これは、パッケージのインストールが正しくないことが原因である可能性があります。

を実行できるようにするにはimport cms.middleware.pagecmsディレクトリが Python パス上にあり、cmsmiddlewareディレクトリの両方に__init__.pyファイルが含まれている必要があります。これにより、これらは Python パッケージとして扱われます。

次のファイル/ディレクトリが存在する必要があります。

/usr/local/lib/python2.7/site-packages/cms
/usr/local/lib/python2.7/site-packages/cms/__init__.py
/usr/local/lib/python2.7/site-packages/cms/middleware
/usr/local/lib/python2.7/site-packages/cms/middleware/__init__.py
/usr/local/lib/python2.7/site-packages/cms/middleware/page.py
于 2013-04-18T08:17:26.283 に答える