flask模板
业务逻辑和表现内容放在一起回增加代码的
复杂度和成本
模板是包含变量得html,用变量表示动态部分
告诉模板引擎具体的值需要从使数据获取,使用真实值 替换变量在返回真正的字符串这个过程叫渲染
flask是使用jinjia2这个模板引擎来渲染模板使用render_template()你只需要提供模板的名称和需要的参数传 递给变量就可以了,需要注意的是模板要放置在文件夹templates下(.html)
login.html
<html>
<head> <meta>charset="UTF-8"</meta> <title>欢迎登录</title> </head> <body> <form action="http://127.0.0.1:5000/login" method="post"> <p>请输入姓名:</p> <p><input type=text name="nm"></p> <p><input type=submit value=确定></p> <p>登入成功欢迎{{admin_name}} </p>
hello_web.py
from flask import Flask, url_for, redirect, request
from flask import render_template
app = (Flask(__name__) )
@app.route('/')
def index():
return render_template('login.html', admin_name='zhen guo')
@app.route('/admin')
def hello_admin():
return 'helloadmin'
@app.route('/guest/<user>')
def hello_guest(user):
return (f'hello {user}' )
@ app.route('/user/<name>')
def hello_user(name):
if request.methmod == 'GET':
if name == 'admin':
return redirect(url_for('hello_admin'))
else:
return redirect(url_for('hello_guest', user=name))
app.debug = True
app.run('0.0.0.0', 5000)