[英]Import error when restructuring test application using Flask
I've been following the instructions on the following site:我一直在按照以下网站上的说明进行操作:
https://flask.palletsprojects.com/en/2.0.x/patterns/packages/ https://flask.palletsprojects.com/en/2.0.x/patterns/packages/
I've been getting the following error:我一直收到以下错误:
web_1 | Error: While importing 'passless', an ImportError was raised:
web_1 |
web_1 | Traceback (most recent call last):
web_1 | File "/usr/local/lib/python3.9/site-packages/flask/cli.py", line 256, in locate_app
web_1 | __import__(module_name)
web_1 | File "/app/passless/__init__.py", line 4, in <module>
web_1 | import passless.views
web_1 | ModuleNotFoundError: No module named 'passless.views'
setup.py安装程序.py
from setuptools import setup
setup(
name='passless',
packages=['passless'],
include_package_data=True,
install_requires=[
'flask',
],
)
__init__.py
from flask import Flask
app = Flask(__name__)
import passless.views
docker-compose.yaml docker-compose.yaml
version: "3"
services:
web:
build: .
image: passless
environment:
FLASK_DEBUG: 1
FLASK_APP: passless
FLASK_ENV: development
ports: ['5001:5000']
volumes: ['.:/app']
Here is the directory structure I am using:这是我正在使用的目录结构:
/passless
setup.py
/passless
__init__.py
index.py
/static
style.css
/templates
layout.html
index.html
login.html
Dockerfile: Dockerfile:
# syntax=docker/dockerfile:1
FROM python:3.9-slim-buster
WORKDIR /app
COPY . .
RUN pip3 install -e .
CMD [ "python3", "-m" , "flask", "run", "--host=0.0.0.0"]
Rename index.py to (or add) views.py:将 index.py 重命名为(或添加)views.py:
from passless import app
@app.route('/')
def index():
return 'Hello World!'
Directory structure:目录结构:
/passless
docker-compose.yaml
Dockerfile
setup.py
/passless
__init__.py
- index.py
+ views.py
https://stackoverflow.com/a/15368107/16409598 this will fix your problem, and I am not a big fan of python but logically speaking according to your words, https://stackoverflow.com/a/15368107/16409598这将解决你的问题,我不是 python 的忠实粉丝,但从逻辑上讲,根据你的话,
*web_1 | Error: While importing 'passless', an ImportError was raised:
web_1 |
web_1 | Traceback (most recent call last):
web_1 | File "/usr/local/lib/python3.9/site-packages/flask/cli.py", line 256, in locate_app
web_1 | __import__(module_name)
web_1 | File "/app/passless/__init__.py", line 4, in <module>
web_1 | import passless.views
web_1 | ModuleNotFoundError: No module named 'passless.views'*
you are trying to load/use a file that does not exist, try creating the file then calling it, or maybe import passless.py!
**REMINDER: I AM NOT a fan of python, just here to help :)**
Best Regards
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.