Flask模板引擎--------过滤器

Flask模板引擎

from flask import Flask, render_template

app = Flask(__name__)


class User(object):
    def __init__(self, name, passwd):
        self.name = name
        self.passwd = passwd

    def __str__(self):
        return '<User: %s>' % (self.name)


# 视图函数
@app.route('/')
def index():
    name = 'westoswestosexam'
    li = [1, 2, 3, 4]
    d = dict(a=1, b=3, c=6)
    u = User('root', 'redhat')
    a = [
        {'name': 'apple', 'count': 10},
        {'name': 'banada', 'count': 20},
    ]

    return render_template('index2.html',
                           name=name,
                           li=li,
                           d=d,
                           u=u,
                           a=a)


def sub(l, start, end):
    return l[::-1]

app.add_template_filter(sub, 'sub')
if __name__ == "__main__":
    # 运行web app
    app.run(host='0.0.0.0', port=9009)

Flask模板引擎-----自定义过滤器

import time
from flask import Flask, render_template
import os
app = Flask(__name__)
class User(object):
    def __init__(self, name, passwd):
        self.name = name
        self.passwd = passwd
    def __str__(self):
        return '<User: %s>' % (self.name)
# 视图函数
@app.route('/')
def index():
    li=  [1,2,3,4]
    socket = ('172.25.254.250', 80)
    atime = os.path.getatime('/etc/passwd')
    mtime = os.path.getmtime('/etc/passwd')
    return render_template('index3.html',
                           li = li,
                           socket=socket,
                           atime = atime,
                           mtime = mtime
                           )
def sub(l, start, end):
    return l[::-1]

# 自定义过滤器1: format_addr_port
def format_addr_port(value):
    """将 socket = ('172.25.254.250', 80)构造为url需要的格式: ip:port"""
    if value:
        res = value[0] + ':' + str(value[1])
        # res = ":".join(value)   # ip:port
    else:
        res = ''
    return res
# 自定义过滤器2: format_date
def format_date(value, format='%H:%M %Y-%m-%d'):
    """将时间戳格式的时间格式化为字符串类型的格式"""
    return time.strftime(format, time.localtime(value))
app.add_template_filter(sub, 'sub')
app.add_template_filter(format_addr_port, 'format_socket')
app.add_template_filter(format_date, 'format_date')

"""
1M = 1024Kb
1G = 1024M
"""
if __name__ == "__main__":
    # 运行web app
    app.run(host='0.0.0.0', port=9005)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值