Python-Flask
1. Flask概述
python的一个框架,目录结构随意
https://www.cnblogs.com/HarryChis/p/11123462.html
pip安装
2.编写
https://www.cnblogs.com/hongdanni/p/11922575.html
3.项目实战
3.1目录
/flask
/static
/templates
show_entries.html
login.html
layout.html
flask.py
schema.sql
3.2步骤
1、 创建文件夹(以上目录)
2、 创建数据库表
3、 创建flask.py
4、 数据库设置
def connect_db():
“”“Connects to the specific database.”""
rv = sqlite3.connect(app.config[‘DATABASE’])
rv.row_factory = sqlite3.Row //用sqlite3.Row来表示数据库中的行
return rv
//sqlite3 轻量级数据库 ,Python库内置的(不需要安装任何服务器端/客户端软件,也不需要运行某个服务,只要你在Python中导入库并开始编程),
5、 连接数据库
def get_db():
“”“Opens a new database connection if there is none yet for the
current application context.
“””
if not hasattr(g, ‘sqlite_db’):
g.sqlite_db = connect_db()
return g.sqlite_db
//首次调用的时候会为当前环境创建一个数据库连接,调用成功后返回已经建 立好的连接
关闭数据库
@app.teardown_appcontext
def close_db(error):
“”“Closes the database again at the end of the request.”""
if hasattr(g, ‘sqlite_db’):
g.sqlite_db.close()
6、 创建数据库
我们可以创建一个名为 init_db 的函数来初始化数据库。 只需要把这个函数放在 flaskr.py 里的 connect_db 函数的后面:
def init_db():
with app.app_context(): //建立应用环境
db = get_db() //打开应用提供的资源
with app.open_resource(‘schema.sql’, mode=‘r’) as f: //open用于执行脚本
db.cursor().executescript(f.read())
db.commit()
7、 显示函数
@app.route(’/’) // 路由
def show_entries():
cur = g.db.execute(‘select title, text from entries order by id desc’)// 执行sql语句
entries = [dict(title=row[0], text=row[1]) for row in cur.fetchall()] // 把位于最上方的记录作为字典返回给show_entries.html
return render_template(‘show_entries.html’, entries=entries)
8、 添加函数
@app.route(’/add’, methods=[‘POST’])
def add_entry(): //定义一个函数
if not session.get(‘logged_in’): //用户登入检查
abort(401) // 生成SIGABRT信号 os.abort
g.db.execute(‘insert into entries (title, text) values (?, ?)’,
[request.form[‘title’], request.form[‘text’]])
g.db.commit()
flash(‘New entry was successfully posted’)
return redirect(url_for(‘show_entries’))
9、 页面设计(HTML文件)
使用Jinja2 作为模板引擎
4 遇到的问题及解决办法
1 ‘list’ object has no attribute ‘words’
list列表对象没有words这个属性
senwords = Senword.query.filter_by(dept_id=current_user.dept_id).all()_out_senword = ''
for senword in senwords:_out_senword = _out_senword + senword.words + '、'
return render_template('manage/hl_editInfo.html', temp=tempObj, this_data=this_data, senwords=_out_senword)
转为字符串
2 local variable ‘tempObj’ referenced before assignment
局部变量’tempObj’在赋值前被引用
同样的方法写了两遍
Python-Flask相关推荐
- 全栈Python Flask教程-建立社交网络
Learn how to build a basic social platform with the Python Flask web framework. 了解如何使用Python Flask网络 ...
- python flask高级编程之restful_('Python Flask高级编程之RESTFul API前后端分离精讲',),全套视频教程学习资料通过百度云网盘下载...
资源详情 r n t某课网好评度100%的Python Flask高级编程之RESTFul API前后端分离精讲 r n t t t第1章 随便聊聊 r n t t t聊聊Flask与Django,聊 ...
- python flask实现博客系统_基于Flask的博客网站设计与实现
涂远杰 郑剑 摘要:该博客系统是一款分享型博客,注重个人的学习心得.生活等方面的记录.后台基于Python中的Flask框架开发,还涉及爬虫,数据库使用的是轻型的SQLite,同时,前端页面的实现涉及 ...
- python Flask框架如何请求及返回数据——flask详细教程
python Flask框架如何请求及返回数据--flask详细教程 文章目录: 1 Flask介绍 1.1 Flask简单介绍 1.2 Flask相关资料信息 2 Flask快速入门 2.1 Fla ...
- python开源项目博客_Blog_mini首页、文档和下载 - Python Flask开源博客 - OSCHINA - 中文开源技术交流社区...
使用Blog_mini,你完全不用担心博客的管理问题! Blog_mini是一个用Python Flask开发的,拥有简洁页面(支持响应式布局!)和强大后台管理功能的开源博客系统,使用Blog_min ...
- 用python+flask自己制作api(教程附源码)
1.背景 ok,可能很多朋友跟我一样经常使用各种api,比如facebook的,github的,甚至是微信的api.所以很多人也想制作自己的api.网上关于这方面的教程实在是很少,今天我就顺手做了一个 ...
- Build Docker image of a Python Flask app【转载】
原文地址:https://stackoverflow.com/questions/41750366/build-docker-image-of-a-python-flask-app I'm tryin ...
- Python Flask web 项目零改动迁移至阿里云函数计算
引言 最近尝试了一下阿里云的函数计算,整体感觉很好,主要是省钱!下面就简单聊一下,如何将 Python Flask 的 web 项目迁移至函数计算. 创建一个银行卡校验的 RestAPI 文件名:in ...
- 注意:python flask 里image文件 css文件 html文件都必须有固定存放位置!
html文件放在templates文件夹里 css文件和image文件都放在static文件夹里 Flask 中 CSS 能否放在其他位置? 但貌似也是能够自定义位置的 Flask静态文件目录地址自定 ...
- Python flask出现jinja2.exceptions.TemplateNotFound错误(修复host就好了???)
源代码: from flask import Flask, render_template, Response import cv2app = Flask(__name__)# camera = cv ...
最新文章
- 这里先发布一个,自己写得unityUI的适配的方案(插播)
- Redis-09Redis的基础事务
- 整合Tomcat和Nginx实现动静态负载均衡
- bms中soh计算方式_BMS电池管理系统由浅入深全方位解析
- (十三)RabbitMQ使用详解
- 巧用windows xp远程桌面web连接
- Java—重入锁的理解
- android p ify 三星,Enjarify - Android逆向(二)
- php制作调查问卷,用PHP制作饼图调查表
- tp框架like模糊查询报错
- 用于检测未知恶意软件的深度学习方法
- win10录屏_不为人知的win10隐藏功能,一键录屏,你还不知道?
- 如何利用Python爬虫爬取小说网站并保存到txt文件
- 软考:计划评审技术(PERT)三点估算法计算工期、标准差、完成概率
- 中兴盒子B860AV1.1-T2版刷公版固件教程
- Linux常用基本命令详解(二)-------磁盘分区和磁盘管理类命令
- 化妆品标签宣称禁用词、风险词汇总
- 服务器绑定自己的域名-腾讯云(超详细)
- oracle数据库 number类型,oracle 数据库 NUMBER类型细讲
- 易算数学公式计算器介绍
热门文章
- selenium webdriver操作chrome options、 启用无痕模式、缓存烦恼
- 算术表达式求值(C语言栈)
- 数据挖掘与数据分析的主要区别是什么?
- 物流运交管理系统 货运单管理
- php mail 垃圾邮件,如何避免我的邮件从PHP邮件()被标记为垃圾邮件? - 程序园
- html 图片滑动验证码,selenium滑动验证码
- asp.net 将中文翻译成拼音(VS2008)
- Kubernetes 学习总结(25)—— Kubernetes 中的 pod 与容器的区别和联系
- 最长上升子序列(LIS) 学习总结
- 聊一聊Spring中@Transactional注解及其失效的七种场景