flask操作sqlite数据库,如何获取每一行数据并展示到页面上

时间: 2024-02-27 22:54:10 浏览: 25
在Flask中使用SQLite数据库可以使用Python的内置SQLite模块来实现。获取每一行数据并展示到页面上,可以按照以下步骤进行: 1. 在Python中连接SQLite数据库,并执行SQL查询语句获取数据。例如: ```python import sqlite3 conn = sqlite3.connect('example.db') cursor = conn.cursor() cursor.execute("SELECT * FROM table_name") rows = cursor.fetchall() ``` 这里`table_name`是你所查询的表的名称,`rows`是一个包含所有查询结果的元组列表。 2. 在Flask中,可以将查询结果作为参数传递给HTML模板,然后在模板中使用模板语言(如jinja2)动态生成页面内容。例如: 在Flask中定义一个路由函数,将查询结果传递给HTML模板: ```python from flask import Flask, render_template app = Flask(__name__) @app.route('/show_data') def show_data(): conn = sqlite3.connect('example.db') cursor = conn.cursor() cursor.execute("SELECT * FROM table_name") rows = cursor.fetchall() return render_template('show_data.html', rows=rows) ``` 3. 在HTML模板中使用模板语言(如jinja2)遍历查询结果,将每一行数据展示到页面上。例如: ```html <!DOCTYPE html> <html> <head> <title>展示数据</title> </head> <body> <table> <thead> <tr> <th>列1</th> <th>列2</th> <th>列3</th> </tr> </thead> <tbody> {% for row in rows %} <tr> <td>{{row[0]}}</td> <td>{{row[1]}}</td> <td>{{row[2]}}</td> </tr> {% endfor %} </tbody> </table> </body> </html> ``` 在模板中使用for循环遍历查询结果,并将每一行数据展示到表格的行中。在这个示例中,我们假设查询结果有三列,分别对应表格中的列1、列2和列3。 这样,当用户访问/show_data路由时,Flask将会执行show_data函数,获取数据并传递到show_data.html模板中,然后动态生成页面内容并返回给用户。

相关推荐

请给如下每行代码添加注释:# -*- coding: utf-8 -*- from flask import Flask, request import sqlite3 app = Flask(__name__) # 连接 SQLite 数据库 conn = sqlite3.connect('entable.db') cursor = conn.cursor() @app.route('/') def index(): return ''' <html> <head> <title>搜索框</title> <style type="text/css"> #search-box { position: absolute; top: 50px; left: 50%; transform: translateX(-50%); border: 1px solid #ccc; border-radius: 20px; background-image: url('search-icon.png'); background-repeat: no-repeat; background-position: 10px center; padding: 10px 20px 10px 45px; font-size: 16px; } #search-box input[type="text"] { border: none; outline: none; width: 100%; padding: 5px 10px; } #search-box input[type="submit"] { border: none; outline: none; background-color: transparent; font-size: 16px; color: #666; cursor: pointer; margin-left: 15px; } #search-result { position: absolute; top: 100px; left: 0; width: 100%; text-align: center; font-size: 20px; } </style> </head> <body> <form id="search-box" method="get" action="/search"> <input type="text" name="q" placeholder="请输入要查询的字符串" /> <input type="submit" value="查询" /> </form> </body> </html> ''' @app.route('/search') def search(): query = request.args.get('q') cursor.execute("SELECT * FROM core WHERE EN LIKE ?", ['%' + query + '%']) results = cursor.fetchall() if not results: return '您查询的内容暂时没有收录' else: return ''' <html> <head> <title>搜索结果</title> <style type="text/css"> #search-result { position: absolute; top: 100px; left: 0; width: 100%; text-align: center; font-size: 20px; } </style> </head> <body> 查询结果: %s </body> </html> ''' % ''.join(['%s %s %s %s' % r for r in results]) if __name__ == '__main__': app.run(debug=True)

最新推荐

recommend-type

flask 框架操作MySQL数据库简单示例

主要介绍了flask 框架操作MySQL数据库,结合实例形式详细分析了flask框架操作MySQL数据库的连接、表格创建、数据增删改查等相关使用技巧,需要的朋友可以参考下
recommend-type

Python写的一个定时重跑获取数据库数据

本文给大家分享基于python写的一个定时重跑获取数据库数据的方法,非常不错,具有参考借鉴价值,需要的朋友参考下
recommend-type

flask框架配置mysql数据库操作详解

主要介绍了flask框架配置mysql数据库操作,结合实例形式详细分析了flask框架配置mysql数据库及连接访问等相关操作技巧,需要的朋友可以参考下
recommend-type

flask框架json数据的拿取和返回操作示例

主要介绍了flask框架json数据的拿取和返回操作,结合实例形式分析了flask框架针对json格式数据的解析、数据库操作与输出等相关操作技巧,需要的朋友可以参考下
recommend-type

Python flask框架如何显示图像到web页面

主要介绍了Python flask框架如何显示图像到web页面,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

【实战演练】MATLAB用遗传算法改进粒子群GA-PSO算法

![MATLAB智能算法合集](https://static.fuxi.netease.com/fuxi-official/web/20221101/83f465753fd49c41536a5640367d4340.jpg) # 2.1 遗传算法的原理和实现 遗传算法(GA)是一种受生物进化过程启发的优化算法。它通过模拟自然选择和遗传机制来搜索最优解。 **2.1.1 遗传算法的编码和解码** 编码是将问题空间中的解表示为二进制字符串或其他数据结构的过程。解码是将编码的解转换为问题空间中的实际解的过程。常见的编码方法包括二进制编码、实数编码和树形编码。 **2.1.2 遗传算法的交叉和
recommend-type

openstack的20种接口有哪些

以下是OpenStack的20种API接口: 1. Identity (Keystone) API 2. Compute (Nova) API 3. Networking (Neutron) API 4. Block Storage (Cinder) API 5. Object Storage (Swift) API 6. Image (Glance) API 7. Telemetry (Ceilometer) API 8. Orchestration (Heat) API 9. Database (Trove) API 10. Bare Metal (Ironic) API 11. DNS
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。