Flask 自定义过滤器多个参数传入

非完整HTML文件:

    <div class="container" style="margin-top:50px;">
        <div class="row">
            <div class="col-sm-10 col-sm-offset-1">
                <div class="jumbotron">
                    <h2 id="title">{{ res.title | my_filter("传入参数") }}</h2>

                </div>
            </div>
        </div>
    </div>

py文件:

# -*- encoding: utf-8 -*-

from flask  import Flask,request,jsonify,render_template,Blueprint

#导入pymongo来连接mongodb
from pymongo import MongoClient
#导入自定义的数据库工具类
from db_tool import db_mysql,db#同时多个网址指向同一个路由
@app.route(‘/‘)
@app.route(‘/home‘)
def home():
    return render_template(‘home.html‘)

#自定义过滤器val为需要过滤的数据,以后追加的为需要传入的参数
def my_filter(val,id):
    if val == "":
        val = id
    return val
#把自定义过滤器添加到模板里()内第一个参数为自定义过滤器函数名,第二个是在模板内调用时的过滤器方法名
app.add_template_filter(my_filter,‘my_filter‘)

#全网咨询页面
@app.route(‘/info‘)
def info():
    #读取数据库新闻页面数据
    news = db.news.find().limit(20)
    #读取数据库政策页面数据
    policy = db.policy.find().limit(20)
    #读取数据库观点页面数据
    opinion = db.opinion.find().limit(20)
    return render_template(‘info.html‘,news= news ,policy = policy ,opinion = opinion)

if __name__ == "__main__":
    app.run()

原文地址:https://www.cnblogs.com/Niuxingyu/p/10219025.html

时间: 2024-08-27 16:16:26

Flask 自定义过滤器多个参数传入的相关文章

Django模板之自定义过滤器/标签/组件

自定义步骤: 1.     在settings中的INSTALLED_APPS配置当前app,不然django无法找到自定义的simple_tag. 2.     在app应用中创建templatetags模块包(模块名只能是templatetags) 3.     创建任意 .py 文件,如:my_tags.py ·   导入模块:from django import template ·   实例化注册器:register = template.Library()   #register的名

创建 AngularJS 自定义过滤器,带自定义参数

Angularjs过滤器是 angularjs非常棒的特性之一.有朝一日,你可能需要使用自定义过滤器,幸运的是,你找到了这篇博文. 下面显示的是自定义过滤器长什么样子(请注意myfilter): <tr ng-repeat="friend in friends |myfilter:'param1':'param2':true:'windowScopedFilter'"> 我们的自定义过滤器叫做 "myfilter", 它有由 ':'隔开的4个参数. 这是

flask中自定义过滤器

第一种方法: 1,第一步:自定义过滤器函数 # 自定义一个函数,将list里面的数据进行排序 def list_sort(list) return list.sort() 2.第二步:注册过滤器 第一个参数是函数名,第二个参数是调用名 app.add_template_filter(list_sort, "sort1") 3,注册成功后就可以在模板中进行调用 <p>{{list | sort1}}</p> ============================

Vue.js学习 Item14 – 过滤器与自定义过滤器

基础 类似于自定义指令,可以用全局方法 Vue.filter() 注册一个自定义过滤器,它接收两个参数:过滤器 ID 和过滤器函数.过滤器函数以值为参数,返回转换后的值: Vue.filter('reverse', function (value) { return value.split('').reverse().join('') }) <!-- 'abc' => 'cba' --> <span v-text="message | reverse">&

Vue.js 自定义过滤器

过滤器,本质上就是一个函数.其作用在于用户输入数据后,它能够进行处理,并返回一个数据结果. Vue.js 与 AngularJS 中的过滤器语法有些相似,使用管道符(|)进行连接,代码示例如下: {{'abc' | uppercase}}    'abc' => 'ABC' 这里使用了Vue.js 内置的过滤器 uppercase,将字符串中的字母全部转换成大写形式. Vue.js 支持在任何出现表达式的地方添加过滤器,除了上面例子中的 双大括号 表达式之外,还可以在绑定指令的表达式后调用,代码

Django 自定义过滤器和模板标签

前提:自定义模板标签和过滤器必须位于Django的某个应用中,这个应用可以包含一个templatetags目录, 和models.py views.py 处于同一级目录.若这个templatetags目录不存在则创建他,同时在该目录下建立一个py文件:__init__.py 文件,使得该目录可以作为Python包.在添加这个模块后,需要重启服务器以便使用.注意命名不要冲突.eg: polls/ __init__.py models.py templatetags/ 在模板中可以这样用:{% lo

django自定义过滤器及模板标签

创建一个模板库 不管是写自定义标签还是过滤器,第一件要做的事是创建模板库(Django能够导入的基本结构). 创建一个模板库分两步走: 第一,决定模板库应该放在哪个Django应用下. 如果你通过 manage.py startapp 创建了一个应用,你可以把它放在那里,或者你可以为模板库单独创建一个应用. 我们更推荐使用后者,因为你的filter可能在后来的工程中有用. 无论你采用何种方式,请确保把你的应用添加到 INSTALLED_APPS 中. 我们稍后会解释这一点. 第二,在适当的Dja

Angular——自定义过滤器

基本介绍 除了使用AngularJS内建过滤器外,还可以根业务需要自定义过滤器,通过模块对象实例提供的filter方法自定义过滤器. 基本使用 (1)input是将绑定的数据以参数的形式传入 (2)input后面的参数也就是:后面的参数,指导在视图时候该如何传递参数 (3)filter方法的回调函数将函数作为返回值,最后这个函数会在视图中进行调用,并且返回值 App.filter('demo', function () { return function (input, arg) { retur

Django之模板层-自定义过滤器以及标签

自定义标签与过滤器 在settings中的INSTALLED_APPS配置当前app,不然django无法找到自定义的simple_tag. 在app中创建templatetags模块(模块名只能是templatetags) 创建任意 .py 文件,如:my_tags.py from django import template # 该对象名必须是register register = template.Library() #自定义过滤器装饰器 @register.filter def mult