Web2py:ImportError:尝试在web2py Modules目录中导入模块时,没有名为patch的模块

时间:2018-07-20 11:23:15

标签: web2py web2py-modules

我在web2py的Modules目录中有几个自定义模块。这些模块很容易导入到控制器文件中。但是,当我尝试将这些模块导入scheduler.py文件时,出现了错误。请帮助。

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.php?page=$1 [NC,L,QSA]

1 个答案:

答案 0 :(得分:1)

问题在于multiprocessing也是Python标准库中模块的名称。 multiprocessing的初始导入是由web2py定制导入器在/ modules中找到的。但是,当multiprocessing本身尝试导入multiprocessing.patch时,本机Python导入器期望.patch是标准库multiprocessing的子模块,当然会失败。

如果multiprocessing是第三方库,则最好将其安装在应用程序的/ modules文件夹之外。如果是自定义模块或您可以轻松编辑的模块,则可以重命名模块或更改导入以引用完整的applications.<app_name>.modules路径-例如:

import applications.<app_name>.modules.multiprocessing.patch as patch