Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 将类从另一个目录导入应用程序路由/视图_Python 3.x_Flask_Wsgi - Fatal编程技术网

Python 3.x 将类从另一个目录导入应用程序路由/视图

Python 3.x 将类从另一个目录导入应用程序路由/视图,python-3.x,flask,wsgi,Python 3.x,Flask,Wsgi,我有一个flask应用程序,我使用下面的代码将我编写的模块导入forms.py文件,它似乎可以工作 sys.path.append('/home/user/lib/') from mymodule import * 但是,当我尝试将其导入routes.py文件时,它失败了。当我重新启动WSGI apache服务器时,它将不会加载,不幸的是,由于某些原因,我没有得到任何日志来说明原因 下面是我的应用程序的布局 flaskapp ├── config.py ├── forms.py ├── fla

我有一个flask应用程序,我使用下面的代码将我编写的模块导入forms.py文件,它似乎可以工作

sys.path.append('/home/user/lib/')
from mymodule import *
但是,当我尝试将其导入routes.py文件时,它失败了。当我重新启动WSGI apache服务器时,它将不会加载,不幸的是,由于某些原因,我没有得到任何日志来说明原因

下面是我的应用程序的布局

flaskapp
├── config.py
├── forms.py
├── flaskapp.wsgi
├── __init__.py
├── routes.py
├── static
│   ├── search.js
│   └── sort.js
└── templates
    ├── base.html
    ├── certs_view.html
    ├── results.html
    ├── index.html
    ├── new_org.html
    ├── submit_csr.html
    └── upload.html
我尝试了append和insert方法来尝试导入模块,但没有成功。我甚至创建了一个符号链接来尝试这种方式,但是一旦我尝试将其导入routes.py,WSGI服务器就不会加载

init.py

from flask import Flask
app = Flask(__name__)
import flaskapp.routes
import flaskapp.config
import flaskapp.forms
from flask_bootstrap import Bootstrap
from flaskapp.forms import RequestCSRForm
from flaskapp.forms import SubmitForm
from flaskapp.forms import UploadCertificate
from flaskapp.forms import CreateNewOrg
#from mymodule import *
bootstrap = Bootstrap(app)
app.config['SECRET_KEY'] = ''
app.config.from_object(config)
...
config.py

import os
from flaskapp import app
...
!!这个有效! forms.py

!!这个不行! routes.py

import os, datetime, json, time, OpenSSL.crypto
from flaskapp import app
from flask import render_template, Flask, redirect, url_for, flash
from flask_bootstrap import Bootstrap
from flaskapp.forms import RequestCSRForm
from flaskapp.forms import SubmitForm
from flaskapp.forms import UploadCertificate
from flaskapp.forms import CreateNewOrg
from OpenSSL.crypto import load_certificate_request, FILETYPE_PEM
sys.path.append('/home/user/lib')
from mymodule import *
...

我希望能够从routes.py或ideal中调用mymodule的函数…

为什么不创建模块设置,然后在flaskapp的venv中安装mymodule

import os, datetime, json, time, OpenSSL.crypto
from flaskapp import app
from flask import render_template, Flask, redirect, url_for, flash
from flask_bootstrap import Bootstrap
from flaskapp.forms import RequestCSRForm
from flaskapp.forms import SubmitForm
from flaskapp.forms import UploadCertificate
from flaskapp.forms import CreateNewOrg
from OpenSSL.crypto import load_certificate_request, FILETYPE_PEM
sys.path.append('/home/user/lib')
from mymodule import *
...