flask 插拨式视图

编程入门 行业动态 更新时间:2024-10-07 06:48:29

flask 插拨式<a href=https://www.elefans.com/category/jswz/34/1770164.html style=视图"/>

flask 插拨式视图

为了我们的视图能够方便的复用,我们有必要学习一下flask的插拨式视图

首先我们需要从flask.view导入MethodView类,该类能够轻松的实现不同的HTTP方法,比如本例中的“GET”方法,当然我们也可以定义“POST”、“PUT”等方法。
然后我们定义一个IndexView类,定义“GET”方法的视图函数get(),让它返回我们想要的功能。(maple-master/forums/views.py)

from flask.views import MethodViewclass IndexView(MethodView):def get(self):return "<h1>Hollo World</h1>"

然后我们使用蓝图注册路由(maple-master/forums/urls.py)
这里我们用了add_url_rule方法添加路由。

from flask import Blueprint
from .views import IndexViewsite = Blueprint('forums', __name__)
site.add_url_rule('/', view_func=IndexView.as_view('index'))

最后注册蓝图(maple-master/forums/_init_.py

from flask import Flask
from forums.urls import site
import osdef create_app(config):templates = os.path.abspath(os.path.join(os.path.dirname(__file__), os.pardir, 'templates'))static = os.path.abspath(os.path.join(os.path.dirname(__file__), os.pardir, 'static'))app = Flask(__name__, template_folder=templates, static_folder=static)app.config.from_object(config)register(app)return app# 定义一个注册函数
# url_prefix参数为url增加一个前缀
def register(app):app.register_blueprint(site, url_prefix='/site')

最后启动服务(maple-master/runserver.py)

from forums import create_appapp = create_app('config')if __name__ == '__main__':app.run(debug=True)

浏览器打开http:127.0.0.1:5000/site 就能看到“Hollo World”了

项目结构:
maple-master
│ config.py
│ runserver.py

├─forums
│ │ urls.py
│ │ views.py
│ │ init.py
│ │
│ └─pycache
│ urls.cpython-35.pyc
│ views.cpython-35.pyc
init.cpython-35.pyc

├─static
├─templates
└─pycache
config.cpython-35.pyc
runserver.cpython-35.pyc

更多推荐

flask 插拨式视图

本文发布于:2024-02-28 04:30:20,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1768116.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:视图   flask   插拨式

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!