基于flask的在线笔记共享管理系统【6】(flask框架简介)

基于flask的在线笔记共享管理系统【6】

本篇文章主要介绍一个web开发的一个框架,了解清楚这里的基本原理与应用方法,为本次项目开发做基础知识的铺垫

flask框架简介及原理

在这里插入图片描述
flask是一个采用python语言实现其基本功能的web开发框架,具有代码简介易于拓展的特点,因而又被称为==“微框架(microframework)”==,
一。flask具有很强的扩展性和兼容性,没有固定的数据库的模板引擎,使用者可以通过自己的需求配置不同的数据库。
二。Flask主要包括Werkzeug和Jinja2两个核心函数库,Werkzeug负责业务处理方面的功能,Jinja2负责安全方面的功能,其 WSGI工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。Flask使用 BSD 授权。
这里对flask不做具体的介绍,我们只需要明白其基本的模式即可满足本次项目开发的需求。有兴趣的同学可以参考百度百科的介绍
传送至 flask百度百科
也可以通过flask的使用文档了解更多的知识。
传送至flask文档

flask的基本模式

flask为一个URL分配一个视图函数,用户访问该URL时会同时触发该视图函数,并执行函数中的操作,将结果显示给浏览器。
这里我们通过一个简单的程序了解一下,flask的基本操作。
在这里插入图片描述
首先你一定安装了flask的库才行。可以使用下面的代码安装:

pip install Flask

安装好以后就可以开始本次的实验了
第一步导入flask模块。

from flask import Flask

第二步,实例化flask模块,创立一个程序

app = Flask(__name__)

第三步,编写视图函数

@app.route('/')
def hello_world():
    return 'Hello, World!'

为了防止引用后运行代码。设置只有在当前文件中可以运行。

if __name__ == '__main__':
    app.run()

代码敲完以后就可以运行了,下面是通过pycharm运行这段代码的结果。
在这里插入图片描述
在这里插入图片描述
然后在浏览器中输入上面生成的网址,就可以看到代码的运行结果了。
在这里插入图片描述
这里如果已经安装了flask的话可以用pycharm直接新建一个flask的项目项目中会自动生成上述代码。具体操作如下:
在这里插入图片描述
由于这里的flask是我之前安装的,配置过程可能不是特变详细。如果上述操作不能实现的话,请参考flask的使用文档。《flask安装
这只是一个简单的代码实现的网页显示hello world,但是本次项目需要实现一个拥有友好交互界面的web系统。所以需要结合一定的HTML语言实现页面渲染。
在这里插入图片描述
这里我们不对这个项目做详细介绍,详细的介绍在后续的文章中会有详细的讲解。

这里我们编写一段简单的HTML代码在浏览器中显示一张图片。代码如下,只需要在return中写入代码即可运行。

from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
    return'''
<html>
    <head>
        <meta charset="utf-8">
        <title>显示一个图片</title>
    </head>   

    <body>
        <p>
			<img src = "../static/2.jpg"  width="100%"  height="100%"  />
        </p>
    </body>
</html> 
'''
# 渲染模板
if __name__ == '__main__':
    app.run()
    

在这里插入图片描述
在这里插入图片描述
如图,HTML成功渲染,但是在实际的开发过程中HTML的代码一般会非常的多,此时我们需要引入一个模板render_template。返回的HTML字符串可以放在一个HTML文件中,这个文件就是模板。

from flask import render_template

引入这个模块以后,就可以将HTML的文件单独写出来了,所有的HTML渲染文件存在templates文件目录下。并且templates文件与app.py在同一目录下。这里要严格遵守模板的文件结构,否则会找不到对应的模板文件。
如图:
在这里插入图片描述
此时home.HTML的文件代码如下;

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>显示一张图片</title>
</head>
<body>
        <p>
			<img src = "../static/2.jpg"  width="100%"  height="100%"  />
        </p>
</body>
</html>

app.py文件代码中,返回return render_template(‘home.html’)。

from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
    return render_template('home.html')
# 渲染模板
if __name__ == '__main__':
    app.run()

render_template(‘参数’)。中的参数是要进行渲染的HTML的文件名称。关于render_template详细的信息可以参考API如图
在这里插入图片描述
在这里插入图片描述
运行结果如下,和直接在app.py中输入HTML代码,效果一样,但是对于大型的项目开发更方便。
在这里插入图片描述
到这里我们的flask的基础简介也就完成了,下一篇文章将向大家介绍,怎样实现浏览器和应用程序交互。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
基于 Flask在线笔记共享管理系统可以实现用户注册、登录、创建笔记、编辑笔记、分享笔记等功能。以下是一个简单的示例: 1. 安装 Flask 和相关依赖: ```shell pip install Flask ``` 2. 创建一个 Flask 应用并设置路由: ```python from flask import Flask, render_template, request, redirect, url_for from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///notes.db' db = SQLAlchemy(app) @app.route('/') def index(): # 显示所有笔记列表 notes = Note.query.all() return render_template('index.html', notes=notes) # 其他路由和功能实现略... if __name__ == '__main__': app.run() ``` 3. 创建一个笔记模型: ```python class Note(db.Model): id = db.Column(db.Integer, primary_key=True) title = db.Column(db.String(50), nullable=False) content = db.Column(db.Text, nullable=False) def __repr__(self): return self.title ``` 4. 创建数据库表: ```shell flask db init flask db migrate flask db upgrade ``` 5. 创建 HTML 模板文件,例如 `index.html`: ```html <!DOCTYPE html> <html> <head> <title>Online Note Sharing System</title> </head> <body> <h1>Notes</h1> <ul> {% for note in notes %} <li>{{ note.title }}</li> {% endfor %} </ul> </body> </html> ``` 以上是一个简单的基于 Flask在线笔记共享管理系统的示例,您可以根据需求进一步完善和扩展功能。注意,这只是一个简单的示例,实际开发中还需要考虑用户认证、权限管理、笔记编辑等复杂的功能和安全性。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DreamBoy@

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值