[Flask]学习杂记--模板
这个学习杂记主要不是分享经验,更多是记录下falsk的体验过程,以后做东西在深入研究,因为django之前用的时间比较长,所以很多概念都是一看而过,做个试验了解下flask的功能。
flask中使用是jinja2 模板,和django自带的模板很类似,但又比django的模板强大,提供了更多有用的工具,基本使用上基本都是一致的。
写了一个小案例,把模板渲染的基本步骤和变量传递的基本使用练习了下。
jinjia2 模板文档 http://jinja.pocoo.org/docs/dev/
flask-bootstrap 文档 http://pythonhosted.org/Flask-Bootstrap/
代码目录结构:
代码清单:
template_jinjia2.py
#-*- coding: utf-8 -*-
#python2.7x
#author: orangleliu@gmail.com 2014-12-17
#template_jijia2
'''
模板的简单使用和熟悉
'''
from flask import Flask, render_template
from flask.ext.bootstrap import Bootstrap
app = Flask(__name__)
bootstrap = Bootstrap(app)
@app.route('/')
def index():
'''
测试下jinja2 模板常用的变量表示方式
'''
mydict = {"name": "orangleliu"}
mylist = ["apple", "orange", "banana"]
class myobj:
def sayhello(self):
return "yes I am a method!"
#这里使用了一个 flask-bootstrap 来做为模板基本风格
return render_template('index.html', mydict=mydict, mylist=mylist,\
myobj=myobj)
if __name__=="__main__":
app.run(debug=True)
index.html
{% extends "bootstrap/base.html" %}
<!-- 整体的页面风格可以通过基本模板来继承 -->
{% block content %}
<h1> Hello Flask template</h1>
<a href="http://jinja.pocoo.org/docs/dev/"> Jinja2 文档地址</a>
<h3>变量渲染</h3>
<p>value of dict: {{ mydict["name"]}}</p>
<p>value of list: {{ mylist[1] }}</p>
<p>method of obj: {{ myobj().sayhello() }} </p>
<p>filter of jinja2: {{ mylist[0]|upper }}</p>
<h3>流程控制语句</h3>
<p>
{% if user %}
Hello, {{ user }}
{% else %}
Hello, Stranger!
{% endif %}
</p>
<!--公共的部分可以写到一个页面中,然后引用-->
{% include 'bottom.html' %}
{% endblock %}
bottom.html
<p> Copyright orangleliu 2014</p>
运行
查看浏览器
有了模板之后,我们就可以处理各种带有参数的get post请求,表单请求,数据操作了。
本文出自 “orangleliu笔记本”博客,转载请务必保留此出处http://blog.csdn.net/orangleliu/article/details/41990573
作者orangleliu 采用署名-非商业性使用-相同方式共享协议
[Flask]学习杂记--模板的更多相关文章
- Flask学习 二 模板
jinja2模版 from flask import Flask,render_template app = Flask (__name__) @app.route ('/<name>') ...
- [Flask]学习杂记一 Hello程序
这几天买了本 <Flask Web开发:基于Python的Web应用开发实战>,之前也用过flask 但是不怎么系统,有时候需要搭建一些临时的测试服务,用falsk比较方面,一个文件就可 ...
- Python Flask学习笔记之模板
Python Flask学习笔记之模板 Jinja2模板引擎 默认情况下,Flask在程序文件夹中的templates子文件夹中寻找模板.Flask提供的render_template函数把Jinja ...
- Flask 学习(三)模板
Flask 学习(三)模板 Flask 为你配置 Jinja2 模板引擎.使用 render_template() 方法可以渲染模板,只需提供模板名称和需要作为参数传递给模板的变量就可简单执行. 至于 ...
- Flask 学习(二)jinja2模板介绍
控制语句和表达式 举例 Flask Python代码 from flask import Flask, render_template, redirect, request app = Flask(_ ...
- Flask 学习目录
Flask 学习目录 Flask 的学习过程是一个了解如何从单个模块搭建一个 Web 框架的过程. Python.Flask 的安装和设置 简单的 Hello World 程序 使用 Jinjia2 ...
- Flask 学习篇二:学习Flask过程中的记录
Flask学习笔记: GitHub上面的Flask实践项目 https://github.com/SilentCC/FlaskWeb 1.Application and Request Context ...
- Flask 学习(四)静态文件
Flask 学习(四)静态文件 动态 web 应用也需要静态文件,一般是 CSS 和 JavaScript 文件.理想情况下你的服务器已经配置好提供静态文件的服务. 在开发过程中, Flask 也能做 ...
- Flask 学习(一)概述及安装
Flask 概述及安装 Flask 简介 Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 . 官方网址 ...
随机推荐
- C#中string的相关方法
下面的方法一般都有很多重载形式,作为初学者的我先把我用过的记录下来吧...以后用到其他的可以一点点添加: 直接上例子吧.先定义两个字符串str1,str2(不要吐槽命名==) string str1, ...
- Python网络爬虫笔记(二):链接爬虫和下载限速
(一)代码1(link_crawler()和get_links()实现链接爬虫) import urllib.request as ure import re import urllib.parse ...
- spring data学习
在Spring Data模块中定义依赖: <dependencies> <dependency> <groupId>org.springframework.data ...
- codevs 1054 电梯
1054 电梯 提交地址:http://codevs.cn/problem/1054/ 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 白银 Silver 题目描述 D ...
- [Codeforces 933A]A Twisty Movement
Description 题库链接 给你一个长度为 \(n\) 的只含有 \(1,2\) 的序列.你可以选择其中的一段 \([l,r]\) ,将区间翻转,翻转后使得单调不下降序列最长.求最长长度. \( ...
- [HNOI2012]射箭
Description 沫沫最近在玩一个二维的射箭游戏,如下图 1 所示,这个游戏中的 x 轴在地面,第一象限中有一些竖直线段作为靶子,任意两个靶子都没有公共部分,也不会接触坐标轴.沫沫控制一个位于( ...
- ●Joyoi Normal
题链: http://www.joyoi.cn/problem/tyvj-1953题解: 定义d(u,v)这个函数,满足: d(u,v)=1,当且仅当在点分树中,u是v的祖先 d(u,v)=0,其它情 ...
- ●BZOJ 2002 [Hnoi2010]Bounce 弹飞绵羊
题链: http://www.lydsy.com/JudgeOnline/problem.php?id=2002 题解: LCT 如果把弹跳的起点和终点连一条边,弹出去的与n+1号点连边, 则不难发现 ...
- hihocoder 1391 树状数组
#1391 : Countries 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 There are two antagonistic countries, countr ...
- bzoj3309DZY Loves Math
3309: DZY Loves Math Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 1240 Solved: 777[Submit][Statu ...