flask-admin的modelview 实现list列表视图中某个列字段值翻译

背景:

flask-admin 开发中modelview视图是非常强大的,但文档写的很难受,只能通过源码慢慢摸索学习,一点点记录

材料:

可用的flask-admin 环境

制作:

样例代码:

1、modelview 视图代码

复制代码
 column_formatters = {
        'status': format_status
    }

2、函数format_status

复制代码
# 格式化列表显示状态
def format_status(view, context, model, name):
    return '有效' if model.status == 0 else '无效'

注: 该函数不能写在当前视图 class中,但可以写在当前文件中

效果:

经验

1、column_formatters 可以用于flask-admin 的modelview 视图中列值的翻译,比如状态的0与1翻译

2、由于column_formatters中的字段可以通过函数扩展,同时可以在函数中拿到(view, context, model, name) 的当前模型信息,那么可以使用这些信息可以做很多事情如下列源码中的例子

复制代码
            from flask_admin.model.template import macro

            class MyModelView(BaseModelView):
                column_formatters = dict(price=macro('render_price'))

3、遇到问题就看源码,比文档和网络资源更有用

相关推荐
狂炫冰美式4 分钟前
凌晨睡不着,我给台风巴威写了个追踪网站
前端·后端·github
程序员cxuan19 分钟前
Claude Code 焚诀(一):Claude Code 六种心智模型
人工智能·后端
雪隐40 分钟前
用Flutter做背单词APP-01服务器?不存在的,我家里就有
前端·人工智能·后端
2601_962341301 小时前
计算机毕业设计之jsp考研在线复习平台
java·大数据·开发语言·hadoop·python·考研·课程设计
huangjiazhi_1 小时前
纯C++实现ini文件操作
java·后端·spring
云烟成雨TD1 小时前
LangFlow 1.x 系列【7】工作流创建与部署指南
人工智能·python·agent
月疯2 小时前
np.where()[0]的用法
开发语言·python·numpy
正儿八经的少年2 小时前
Spring Boot
java·spring boot·后端
未秃头的程序猿2 小时前
虚拟线程用了一年,我真香了——10倍吞吐量是真实存在的
java·后端·面试
沙蒿同学2 小时前
用 RAG+FAISS 构建古诗词 AI 取名系统:从向量检索到六层质量过滤的实战
后端·aigc·ai编程