当前位置: 首页 > article >正文

15、Django Admin添加自定义字段功能

修改模型类HeroAdmin

@admin.register(Hero)
class HeroAdmin(admin.ModelAdmin):
    change_list_template = "entities/heroes_changelist.html"
    
    ...    # 此处原代码不动,只增加此前后代码
    
    def get_urls(self):
        urls = super().get_urls()
        my_urls = [
            path('immortal/', self.set_immortal),
            path('mortal/', self.set_mortal),
        ]
        return my_urls + urls
    def set_immortal(self, request):
        self.model.objects.all().update(is_immortal=True)
        self.message_user(request, "All heroes are now immortal")
        return HttpResponseRedirect("../")
    def set_mortal(self, request):
        self.model.objects.all().update(is_immortal=False)
        self.message_user(request, "All heroes are now mortal")
        return HttpResponseRedirect("../")
        

新增目录文件templates/Entities/change_form.html,Entities为应用名。change_form.html代码如下:

{% extends "admin/change_form.html" %}
{% load i18n admin_urls %}
{% block object-tools-items %}
    <li>
        <a href="{% url opts|admin_urlname:'history' original.pk|admin_urlquote %}" class="historylink">{% translate "History" %}</a>
    </li>
    <li>
        <a href="mylink/" class="historylink">My Link</a>
    </li>
    {% if has_absolute_url %}
        <li>
            <a href="{% url 'admin:view_on_site' content_type_id original.pk %}" class="viewsitelink">{% translate "View on site" %}</a>
        </li>
    {% endif %}
{% endblock %}

显示效果:


http://www.kler.cn/news/289322.html

相关文章:

  • 宠物勺子秤芯片解决方案CSU8RP1186
  • 机器学习(五) -- 监督学习(8) --神经网络2
  • 苹果系统中如何安装Python和PyCharm
  • 低代码用户中心的构建与应用
  • 计算机毕业设计PySpark深度学习动漫推荐系统 动漫视频推荐系统 机器学习 协同过滤推荐算法 bilibili动漫爬虫 数据可视化 数据分析 大数据毕业设计
  • Vue3 数据通信
  • 计算机网络 第1章 概述
  • AI预测体彩排3采取888=3策略+和值012路或胆码测试9月3日升级新模型预测第71弹
  • 大数据-114 Flink DataStreamAPI 程序输入源 自定义输入源 Rich并行源 RichParallelSourceFunction
  • Meshy-4:AI驱动3D建模的革命性工具,解锁虚拟创作新高度
  • AIGC与数据分析融合,引领商业智能新变革(TOP企业实践)
  • 摄像头进行视频捕获并定时截取屏幕图像
  • 【前端面试】设计循环双端队列javascript
  • C#通过ACE OLEDB驱动程序访问 Access和 Excel
  • K8s 节点管理:使用 kubeadm 删除和重新添加 Kubernetes 节点
  • 软件架构设计——DCI 范型
  • uni-app支持Vue 3的组件库推荐几个
  • 创新之光闪耀,点赋科技在第十三届创新创业大赛中绽放光彩
  • Django form.save 方法的详细分析
  • 毕业设计选题系统
  • 前段框架有哪些
  • 一起学习LeetCode热题100道(65/100)
  • 数据结构基本知识
  • Rust: Web框架Axum和Rest Client协同测试
  • 从 Oracle 到 TiDB 丨数据库资源评估指南
  • CUDA与TensorRT学习一:并行处理与GPU体系架构
  • 名城优企游学活动走进龙腾半导体:CRM助力构建营销服全流程体系
  • nginx部署前段VUE项目
  • wsl2 无法上网解决方法
  • 文本文件完整性判断-加密