由于某种原因没有模块名称烧瓶

时间:2021-03-24 18:02:33

标签: python flask backend

我正在构建我的第一个后端网站,但是现在当我尝试从 shell 启动数据库时,我得到了这个:

<块引用>

没有名为flask的模块

文件结构:

这些都在一个名为

的文件夹中
5_judges.py  __pycache__  backend.py  dives.py           static     textcase.py
__init__.py  backend.py   dive.js      documentation.txt  templates

代码如下:

from flask import Flask, render_template
from flask_sqlalchemy import SQLAlchemy
from datetime import datetime
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI']= 'sqlite:///posts.db'
db = SQLAlchemy(app)

1 个答案:

答案 0 :(得分:0)

您可以在构建 Flask 项目时使用 关注点分离 的原则。遵循这一原则,您的所有文件/模块/包都井井有条且可重复使用。

在创建 Flask 应用程序时使用此结构:

project_folder
    |---------- app.py
    |---------- config.py
    |---------- .env
    |---------- requirements.txt
    |---------- .flaskenv
    |---------- app/
                  |------ routes.py
                  |------ models.py
                  |------ __init__.py
                  |------ forms.py
                  |------ templates/
                              |-------- home.html
                              |-------- base.html
                  |------ static/
                            |-------css/
                                     |------- styles.css
                            |-------js/
                                     |------- app.js

您的所有配置都转到 config.py 文件。

您在 __init__.py 中注册已安装的软件包,例如flask、SQLAlchemy

已安装的软件包将写入 requirements.txt 文件。

就您而言,您需要安装 flask

(venv)$ pip3 install flask

更新您的 requirements.txt 文件:

(venv)$ pip3 freeze > requirements.txt

_init_.py 中初始化您的烧瓶应用:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
db = SQLAlchemy(app)

import routes, models

您的所有路线都将在 routes.py 中:

from app import app
from flask import render_template

@app.route('/')
def home():
    return render_template('home.html')

更新数据库的逻辑将在您的路由中。

相关问题