Flask_学习笔记_06: Flask中的if语句

2023-05-14,,

今天来学习一下如何在Flask当中使用if...else语句。

要实现的功能就是如果用户登录了我的网站,就在首页显示用户名和注销链接,如果用户没有登录,就显示登录和注册链接。

.py代码如下:

from flask import Flask, render_template

app = Flask(__name__)

@app.route("/<is_login>/")
def index(is_login):
    if is_login == '1':
        username = '张无忌'
        return render_template('index.html', username=username)
    else:
        return render_template('index.html')
if __name__ == '__main__':
    app.run(debug=True)

@app.route("/<is_login>/"),<is_login>这个URL参数就是来判断用户是否登录的,本来应该要用cookie什么的做验证的,现在还没学到,就先用这个参数来模拟一下。
接着,视图函数把这个控制用户是否登录的参数传给视图函数,if判断是否== 1,1代表用户已登录。就获取用户名,return一个页面,带上用户名。
def index(is_login):
if is_login == '1':
username = '张无忌'
return render_template('index.html', username=username)
再接着是如果用户没有登录,就直接返回首页。这个首页上要显示的内容,当然需要在html文件里定义了。
else:
return render_template('index.html')

index.html代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>

    {% if username %}
        <a href="#">{{ username }}</a>
        <a href="#">注销</a>
    {% else %}
        <a href="#">登录</a>
        <a href="#">注销</a>
    {% endif %}

</body>
</html>

重点来了:
在Flask的HTML模板中,if..else的语句,需要用以下这样的方式:
{% if xxx %}
html代码...
{% else %}
html代码...
{% endif %}这种方式
所以上面的代码就是如果用户名为true,那就显示用户名和注销链接,else就显示登录和注销链接,当然这里的链接都是空链接。

《Flask_学习笔记_06: Flask中的if语句.doc》

下载本文的Word格式文档,以方便收藏与打印。