django 自定义filter 判断if var in list的例子


Posted in Python onAugust 20, 2019

1. 需求:

用户答题练习,当用户获取所有题目的同时,需要判断用户是否已经做过该题目,如果做过,需要render的时候添加一个“回顾”按钮。

2. 实现

a. 查询用户做过题目的id

finished_objs=UserSpeaking.objects.filter(user=request.user)
      finished_ids=[ obj.id for obj in finished_objs]

b. 创建filters.py

from django import template
register = template.Library()
def include_filter(value,values):
  return True if value in values else False
register.filter('include', include_filter)

c. 在模板中引用

{% load filters %}
 
...
{% if test.id|include:finished_ids %}
 <a href="{% url 'practice_history' test.id %}" rel="external nofollow" class="go_to_btn lf">去回顾</a>
{% endif %}

以上这篇django 自定义filter 判断if var in list的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
举例简单讲解Python中的数据存储模块shelve的用法
Mar 03 Python
python解析基于xml格式的日志文件
Feb 25 Python
Python定时器实例代码
Nov 01 Python
python根据list重命名文件夹里的所有文件实例
Oct 25 Python
python爬虫租房信息在地图上显示的方法
May 13 Python
Django模板导入母版继承和自定义返回Html片段过程解析
Sep 18 Python
python实现超市商品销售管理系统
Oct 25 Python
pytorch实现focal loss的两种方式小结
Jan 02 Python
tensorflow实现测试时读取任意指定的check point的网络参数
Jan 21 Python
python matplotlib包图像配色方案分享
Mar 14 Python
浅谈python 调用open()打开文件时路径出错的原因
Jun 05 Python
Python Flask实现进度条
May 11 Python
python并发编程多进程 模拟抢票实现过程
Aug 20 #Python
python3的数据类型及数据类型转换实例详解
Aug 20 #Python
Python列表的切片实例讲解
Aug 20 #Python
python并发编程多进程 互斥锁原理解析
Aug 20 #Python
django 配置阿里云OSS存储media文件的例子
Aug 20 #Python
python数据类型之间怎么转换技巧分享
Aug 20 #Python
python并发编程多进程之守护进程原理解析
Aug 20 #Python
You might like
实现PHP多线程异步请求的3种方法
2014/01/17 PHP
[原创]PHP实现逐行删除文件右侧空格的方法
2015/12/25 PHP
php 人员权限管理(RBAC)实例(推荐)
2017/05/24 PHP
thinkphp中的多表关联查询的实例详解
2017/10/12 PHP
优化 JavaScript 代码的方法小结
2009/07/16 Javascript
jQuery学习笔记之Helloworld
2010/12/22 Javascript
Javascript模块化编程(三)require.js的用法及功能介绍
2013/01/17 Javascript
jQuery拖动div、移动div、弹出层实现原理及示例
2014/04/08 Javascript
JS利用cookie记忆当前位置的防刷新导航效果
2015/10/15 Javascript
跟我学习javascript的隐式强制转换
2015/11/16 Javascript
基于JavaScript实现轮播图代码
2016/07/14 Javascript
JS关闭窗口时产生的事件及用法示例
2016/08/20 Javascript
JS中作用域和变量提升(hoisting)的深入理解
2016/10/31 Javascript
arcgis for js 修改infowindow样式的方法
2016/11/02 Javascript
详解Vue.js动态绑定class
2016/12/20 Javascript
select标签设置默认选中的选项方法
2018/03/02 Javascript
解决Vue使用swiper动态加载数据,动态轮播数据显示白屏的问题
2018/09/27 Javascript
vue3.0中的双向数据绑定方法及优缺点
2019/08/01 Javascript
Object.keys() 和 Object.getOwnPropertyNames() 的区别详解
2020/05/21 Javascript
[56:35]DOTA2上海特级锦标赛主赛事日 - 5 总决赛Liquid VS Secret第一局
2016/03/06 DOTA
python中requests小技巧
2017/05/10 Python
基于Python中单例模式的几种实现方式及优化详解
2018/01/09 Python
Pandas读取MySQL数据到DataFrame的方法
2018/07/25 Python
python中cPickle类使用方法详解
2018/08/27 Python
一行代码让 Python 的运行速度提高100倍
2018/10/08 Python
简单了解Python3里的一些新特性
2019/07/13 Python
迪卡侬印尼体育用品商店:Decathlon印尼
2020/03/11 全球购物
电脑教师的教学自我评价
2013/11/26 职场文书
售后专员岗位职责
2013/12/08 职场文书
弘扬焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
2014工程部年度工作总结
2014/12/17 职场文书
财务部会计岗位职责
2015/02/03 职场文书
中学总务处工作总结
2015/08/12 职场文书
教师学习心得体会范文
2016/01/21 职场文书
再谈python_tkinter弹出对话框创建
2022/03/20 Python
《游戏王:大师决斗》将推出新卡牌包4月4日上线
2022/03/31 其他游戏