2021-10-20-Flask-01- 基本运行框架及配置文件
这里搭建一个基本的Flask框架的项目结构
项目地址:https://codechina.csdn.net/sabian2/myflask.git
git clone https://codechina.csdn.net/sabian2/myflask.git
选择好的10月20日的带初始框架的最后一个版本
项目结构解析
myflask是项目目录名,需要把它mark 为source root,下面的根据目录的缩进看层次。
manage.py
项目的主运行文件,只要在目录下的命令行使用
python manage.py
即可启动项目
.gitignore
git版本控制忽略的文件
requirements.txt
项目的依赖包名称
settings.py
运行的设置文件
mainapp
一个应用,相当于拆分的网页功能
static
静态文件目录
templates
模 板文件目录
user.html
一个用户的模板文件
views
视图文件目录
user_view.py
用户视图类
models
模型文件
user_model.py
用户模型类
utils
一个通用的工具包
文件详情
settings.py
class Dev():ENVIRONMENT='development'DEBUG=TrueSQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:sa123456@localhost:3306/db1?charset=utf8'SQLALCHEMY_TRACK_MODIFICATIONS = TrueSQLALCHEMY_COMMIT_ON_TEARDOWN = TrueSQLALCHEMY_ECHO = True
SQLALCHEMY_DATABASE_URI:数据库的资源定位标识
格式是
数据库名称+驱动://用户名:密码@地址:端口/数据集名称?附加参数
SQLALCHEMY_TRACK_MODIFICATIONS :数据库是可扩展的
SQLALCHEMY_COMMIT_ON_TEARDOWN :回收资源时自动提交数据
SQLALCHEMY_ECHO :控制台显示数据库语句
mianapp/__ init__.py
from flask import Flask
import settings
app=Flask(__name__)
app.config.from_object(settings.Dev)
一般都以这种方式创建app,
app.config.from_object(settings.Dev)
从settings.py文件中导入设置
mainapp/templates/user.html
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>用户测试</title>
</head>
<body><ul>{% for k,v in cookies.items() %}<li>{{ k }}:{{ v }}</li>
{% endfor %}
</ul>
<p>{{ base_url }}
</p>
</body>
</html>
模板页面显示的是Jinja2语法的格式
pycharm里在如下位置调整自己项目的模板语法,输入时会有提示
mainapp/views/user_view.py
用户视图
from flask import Blueprint
from flask import request,render_template
from models.user_model import UserModel
from models import db
blue=Blueprint('userBlue',__name__,template_folder='templates')@blue.route('/login',methods=['GET','POST'])
def login():data={'cookies':request.cookies,'base_url':request.base_url}db.drop_all()db.create_all()user=UserModel()user.name='xx'user.phone='12345678910'user.auth_key='123456'db.session.add(user)return render_template('user.html',**data)
这里定义了一个蓝图,通过蓝图配置路径,内部做了一个数据库的初始化,并添加了数据
最后渲染了模板
models/init__.py
# 在这里创建db对象,然后在模型类中被导入from flask_sqlalchemy import SQLAlchemy
db=SQLAlchemy()
models/user_model.py
from models import dbclass UserModel(db.Model):id = db.Column(db.Integer,primary_key=True,autoincrement=True)name=db.Column(db.String(30),nullable=False)auth_key = db.Column(db.String(100),nullable=False)phone=db.Column(db.String(11),unique=True)
这里建立一个模型,和数据库的表是对应的
manage.py
from mainapp import app
from mainapp.views import user_view
# from flask_script import Managerfrom models import dbif __name__ == '__main__':# 注册蓝图路由app.register_blueprint(user_view.blue,url_prefix='/user')db.init_app(app)# manager=Manager(app)# manager.run()app.run(host='localhost',port=5000,debug=True)
上面的是导入的包
下面的是运行程序的步骤
app.register_blueprint注册蓝图路由,并添加前缀
db.init_app(app)启动数据库
app.run(host=‘localhost’,port=5000,debug=True),以括号内的配置启动
因为flask高版本缺少一部分文件,所以flask-script插件的方法已经用不了了。
运行程序
直接运行manage.py文件即可,或在命令行输入
python manage.py
启动后进入做的页面可以看到
控制台会显示一些信息
2021-10-20-Flask-01- 基本运行框架及配置文件相关推荐
- 实战:部署一套完整的企业级高可用K8s集群(成功测试)-2021.10.20
更新时间 2022年10月14日18:17:39 实验环境 实验环境: 1.win10,vmwrokstation虚机: 2.k8s集群:3台centos7.6 1810虚机,2个master节点,1 ...
- 2021.10.20市场行情煤炭股集体跳水!
在交易市场中,所有的东西都是假的,唯有价格是真的 我可以没有女朋友,但是不能接受没有股票的世界. 世界上还有什么比投机更伟大的事业呢? 市场观点:煤炭股的趋势并没有坏,也就是说缺煤应该到了明年的一季度 ...
- 2021.10.20股票小计
今日大盘基本上涨幅不大,上证收跌0.17点,深证收跌0.33点,创业板收跌0.37点,自己持有的股票方面,证券板块今天下跌0.44点,华林证券收跌1个点,今天补了500股,慢慢建仓,钢铁方面,中信特钢 ...
- 【每日英文】2021.10.20
compatibility n. 共存:和睦相处:(计算机设备的)兼容性 6.It's called Turing compatibility. 它叫做图灵兼容性. 7.This compatibil ...
- Functional Options: Go中实现优雅的API的方法 | Gopher Daily (2021.10.22)
每日一谚:学会不要马上增加太多的功能,要把核心思想建立起来并进行测试 - Leah Culver Go技术生态 Go很大可能在go 1.19版本中支持编译器的FGO(feedback-guided o ...
- 零基础 Ubuntu 20.04.01 下搭建51单片机开发环境[开源编译器SDCC]
原创首发于CSDN,转载请注明出处,谢谢! 文章目录 为何会在Linux下开发单片机 个人系统环境与所用开发板 安装开源编译器 sdcc STC MCU ISP 闪存工具 stcgal 的安装 单片机 ...
- 【财经期刊FM-Radio|2021年03月01日】
title: [财经期刊FM-Radio|2021年03月01日] 微信公众号: 张良信息咨询服务工作室 [今日热点新闻一览↓↓] 2月份中国制造业PMI季节性回落,经济仍保持稳定恢复势头 茅台集团去 ...
- (转自http://www.blogjava.net/moxie/archive/2006/10/20/76375.html)WebWork深入浅出
(转自http://www.blogjava.net/moxie/archive/2006/10/20/76375.html) WebWork深入浅出 本文发表于<开源大本营> 作者:钱安 ...
- 2021.10.25-10.31 AI行业周刊(第69期):AI进化之路
本周<Opencv基础及AI项目实战>以及<Pytorch模型推理及多任务通用范式>两门课程已经完结. 两门课程中,针对所有完成作业的同学,都颁发了毕业证书. 并且对于完成比较 ...
最新文章
- python 垃圾回收器_Python 垃圾回收机制详细
- python urllib.request 爬虫 数据处理-python之爬虫(三) Urllib库的基本使用
- Jenkins 基本概念与简介
- python连接oracle详细教程_[宜配屋]听图阁
- 如何跳过或去除“非正版Windows系统“信息
- VMAXe资源配置只用4分钟
- git 编辑提交的技巧
- Atitit 音频资料与音乐库管理系统功能 目录 1. 通用功能区	2 1.1. 批量处理功能文件夹遍历	2 1.2. Zip文件遍历与读取	2 1.3. Rar文件遍历与读取	2 1.4. She
- 什么是驻点和拐点_拐点和驻点的区别有哪些
- XJTU-SY滚动轴承加速寿命试验数据集
- javascript 图像二值化处理
- 用Visual C#.NET编写服务器日期控件
- 网秦上市前夕被央视曝光恶意吸费 网秦飞流否认
- 人民日报海外版总编辑詹国枢谈新闻写作技巧:五句话妙手著文章
- Intellij IDEA 提示cannot find declaration to go to 解决方法
- moses 编译_moses工具的配置详解
- 实时监控linux的日志命令
- L1正则化及其稀疏性的傻瓜解释
- 物联网中的“网”正在经历一次“脱胎换骨”,不仅洞察人性,还将修炼成精...
- SecureCRT乱码的问题