Table of Contents
前言
上篇文章也说过了,在python中写前端代码肯定是不合适的,一是前后端耦合,二是在后端中写前端也没有代码提示是非常痛苦的。
所以一般情况,页面都是预先写好的,页面中有一些类似{ {name}}的占位符,我们从后端传递到前端,就可以将这些占位符替换成我们想要的值。这整个过程就被称为 MVC,M代表从后端传递到前端的值,V代表写好的页面模板,C代表代表逻辑处理即接收前端的请求再做处理的那部分。
使用模板
MVC中的M 和 C如下
from flask import Flask, request, render_template # 通过render_template将页面返回给用户
app = Flask(__name__)
@app.route('/', methods=['GET', 'POST'])
def home():
page_list = [1, 2, 3, 4, 5]
return render_template('home.html', page_list=page_list)
@app.route('/signin', methods=['GET'])
def signin_form():
return render_template('form.html')
@app.route('/signin', methods=['POST'])
def signin():
username = request.form['username']
password = request.form['password']
if username == 'admin' and password == 'password':
# 密码正确就转发到登录成功页面,并给前端username
return render_template('signin-ok.html', username=username)
# 否则转发到form.html 传给前端 username 和 message
return render