码迷,mamicode.com
首页 > 其他好文 > 详细

flask的模版语法

时间:2021-02-02 10:32:06      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:值类型   url   djang   get   ict   temp   table   获取   set   

引子:

  flask的模版语法需要jinja2的支持,不像django内置,但2者的语法基本一致,只是有写不一样的地方

 

和django模版相同与不同之处:

  1 视图函数中和django基本一致

def detail(id):
    """
    flask 不像django 不支持正则 用这种方法来传值 也可以直接传id 不规定拿到的值类型/detail/<int:id>
    :param id:
    :return:
    """
    user=session.get("user_info")
    if not user:
        """
        url_for 类似与django 路由的反向生成  url=url_for("l1",id=123)
        """
        url=url_for("l1")
        return redirect(url)
    detail=USERS.get(id).get("detail")
    return render_template("detail.html",detail=detail)

    html文件中 一摸一样

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">

    <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
</head>
<body>
            <h1>详情</h1>
            {{ detail }}

<script>
</script>
</body>
</html>

  不同之处 例如字典的遍历更加和python的原生语法贴合

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">

    <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
</head>
<body>
        <h1>用户列表</h1>
        <table>
            <h1>与django 的模版语法不同的是 在循环字典的时候 需要像python 那样加()调用
            并且在获取值 也可以使用python的语法  v ====v.name ==== v["name"] ====v.get("name")</h1>
            {% for k,v in user_dict.items() %}
            <tr>

                <td>{{ k }}</td>
                <td>{{ v }}===={{ v.name }}===={{ v["name"] }}===={{ v.get("name") }}</td>
                <td><a href="/detail/{{ k }}">查看详细</a></td>
            </tr>
            {% endfor %}
        </table>
        

<script>
</script>
</body>
</html>

  

 

flask的模版语法

标签:值类型   url   djang   get   ict   temp   table   获取   set   

原文地址:https://www.cnblogs.com/yuan-x/p/14354008.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!