首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Django Admin中向用户更改页添加说明

在Django Admin中向用户更改页添加说明可以通过自定义模板和扩展Django Admin的功能来实现。

  1. 创建自定义模板:
    • 在项目的templates目录下创建一个admin目录(如果不存在的话)。
    • 在admin目录下创建一个change_form.html文件。
    • 编辑change_form.html文件,添加自定义的说明内容,可以使用HTML标签和CSS样式来美化说明内容。
  • 扩展Django Admin的功能:
    • 创建一个admin.py文件(如果不存在的话)。
    • 在admin.py文件中导入需要扩展的模型类和Admin类。
    • 继承自定义的Admin类,并重写change_view方法。
    • 在change_view方法中指定自定义模板的路径,并将模板传递给模板渲染。

下面是一个示例:

代码语言:txt
复制
# admin.py

from django.contrib import admin
from django.template.response import TemplateResponse

from .models import YourModel

class YourModelAdmin(admin.ModelAdmin):
    def change_view(self, request, object_id, form_url='', extra_context=None):
        extra_context = extra_context or {}
        extra_context['description'] = "这是你的自定义说明内容"
        return super().change_view(
            request, object_id, form_url, extra_context=extra_context,
        )

    def get_changelist(self, request, **kwargs):
        self.changelist_template = 'admin/change_list.html'
        return super().get_changelist(request, **kwargs)

admin.site.register(YourModel, YourModelAdmin)

在上面的示例中,我们重写了change_view方法,在extra_context中添加了description变量,这个变量将在自定义模板中使用。get_changelist方法用于指定自定义的change_list模板路径(可选)。

然后,我们可以在自定义的change_form.html模板中使用description变量来显示说明内容,如下所示:

代码语言:txt
复制
<!-- change_form.html -->

{% extends "admin/change_form.html" %}

{% block extrahead %}
{{ block.super }}
<style>
    .description {
        color: #999;
        font-size: 14px;
        margin-top: 10px;
    }
</style>
{% endblock %}

{% block object-tools-items %}
{{ block.super }}
<div class="description">
    {{ description }}
</div>
{% endblock %}

在上面的示例中,我们使用了description变量来显示说明内容,并添加了一些CSS样式来美化说明的显示效果。

通过以上步骤,你可以在Django Admin的更改页中添加自定义的说明内容,并通过自定义模板和扩展Admin类的方式实现。请注意,这里没有提及腾讯云相关产品和产品介绍链接地址,因为这些与如何在Django Admin中向用户更改页添加说明无直接关联。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Django快速入门——投票程序(7) 自定义后台

我们想要在创建问题时直接添加很多个选项:将polls/admin.py修改为如下内容: from django.contrib import admin from .models import Choice...自定义后台更改列表 现在投票的后台看起来很不错,让我们对问题列表页面进行一些调整——改成一个能展示系统中所有投票的页面。默认情况下,Django 显示每个对象的 str() 返回的值。...为此,使用 list_display属性,它是一个包含要显示的字段名的元组,在更改列表以列的形式展示这个对象: class QuestionAdmin(admin.ModelAdmin):...编辑文件 polls/admin.py,将以下代码添加至 QuestionAdmin: list_filter = ["pub_date"] 这样做添加了一个“过滤器”侧边栏,允许人们以 pub_date...(你可以使用任意多的字段) 说明 完整的教程可以前往官网:https://docs.djangoproject.com/zh-hans/4.2/intro/ 本教程省略了一些内容,第5部分的测试,第

23640

django 1.8 官方文档翻译: 1-2-2 编写你的第一个Django应用,第2部分

探索管理功能 现在我们已经注册了 Poll ,那 Django 就知道了要在管理网站的首页上显示出来: 点击 “Polls” 。现在你在 polls 的 “更改列表” 。...Save and add another – 保存更改并载入当前对象类型的新的空白表单。 Delete – 显示删除确认。...你将看到一列出了通过 Django 管理界面对此对象所做的全部更改的清单的页面, 包含有时间戳和修改人的姓名等信息: 自定义管理表单 花些时间感叹一下吧,你没写什么代码就拥有了这一切。...这样的话你就需要在注册对象 时告诉 Django 对应的配置。 让我们来看看如何在编辑表单上给字段重新排序。...如果你在窗口中添加了一 poll 并点击了 “Save” 按钮, Django 会将 poll 保存至数据库并且动态的添加为你正在查看的 “Add choice” 表单的 已选择项。

2.5K40
  • 后端框架学习-Django

    映射图: ORM———->DB 类———->数据表 对象——–>数据行 属性——–>字段 数据库迁移: 迁移是Django同步您对模型所做出的更改添加字段,删除模型等)到您的数据库模式的方式。...verbose_name:设置此字段在admin界面上的显示名称,可以中文化admin界面 好习惯:字段选项【添加更改】均要执行 模型类-Meta内部类 使用Meta类来给**模型(其实就是表的属性)...模型管理器类 作用:为后台管理界面添加便于操作的新功能 继承于django.contrib.admin里的ModelAdmin类 在应用的admin.py定义模型管理器类 class XXXXManager...场景:1.博客列表;2.电商商品详情 场景特点:数据变动频率较少 Django设置缓存:(settings.py) 数据库缓存:将缓存存储在数据库,尽管存储介质还是数据库,但把一次复杂查询的结果直接存储在表里...has_other_pages:如果有上一或者有下一返回True csv文件 csv文件:逗号分隔值文件,其文件以纯文本形式存储表格数据(数字或文本) 说明:可被常见制表工具,excel等直接进行读取

    9.5K40

    Django | 页面数据的缓存与使用

    配置django的缓存设置 settings.py添加: CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache...例子 在视图类或视图函数,首先先别急着计算页面数据;而是先向缓存读取该页面的数据;若返回一个None;说明没有缓存或缓存的数据已经过期;此时才需要进行数据库查询等计算服务 并将更新后的数据写入缓存,...但假如我设定timeout为3600,即60分钟,那么在60分钟内,网页的数据被更新了,而用户访问时只能显示旧的页面数据,因此为了保证缓存的时效性, 可以在数据更改时删除旧缓存。...如在django自带的管理页面,当模型发生修改时,会默认调用admin.ModelAdmin的save_model 或 delete_model 方法。...因此,继承并重写该方法,并在里面添加 删除缓存的代码,则网站管理员通过自带管理页面修改数据时,旧的页面缓存会被清除 : class BaseModel(admin.ModelAdmin):

    1.9K40

    Django 3.1 官网学习路线

    每种类型的字段都知道如何在 Django 管理显示自己。 每个 DateTimeField 都有免费的 JavaScript 快捷键。...页面的底部提供了几个选项: 保存-保存更改并返回此类型对象的更改列表。 保存并继续编辑——保存更改并重新加载此对象的管理页面。 保存并添加另一个——保存更改并为这种类型的对象加载一个新的空白表单。...您将看到一个页面,其中列出了通过 Django 管理员对这个对象所做的所有更改,以及更改者的时间戳和用户名: 第三部分 概览 视图是 Django 应用程序的 Web 页面的“类型”,通常提供特定的功能和特定的模板...添加更多的视图 现在让我们 poll /views.py 添加更多的视图。...但是,实际上,这是系统添加 Choice 对象的一种低效方式。最好在创建 Question 对象时直接添加一堆 Choices。让我们做到这一点。

    8.2K10

    【Git】每天1分钟系列——Git本地与远程服务器介绍

    本地与服务器 本地与服务器交互的方式及命令如下 推送指将特定分支在本地仓库区的记录发送到服务器上 获取指将服务器特定分支本地工作区同步 获取 建议:在每天开始编写代码前,先与服务器同步一次;或者在公用分支...origin dev 5.切换回工作分支 git checkout zhujiao 6.在最新代码上继续开发,所以将dev分支合并到zhujiao分支 git merge dev 解决冲突 建议:在更改公用文件...urls.py文件 git checkout dev 2.在dailyfresh/urls.py文件添加一条url from django.conf.urls import include, url...url(r'^user/',include('df_user.urls')), ] 3.添加并提交 git add dailyfresh/urls.py git commit -m '配置用户模块url...('df_goods.urls')), ] 6.冲突解决完成,再次添加、提交、推送 git add dailyfresh/urls.py git commit -m '配置用户模块url-解决冲突后'

    44210

    Django】 开发:补充知识

    :返回上一的页码,如果上一不存在,抛出 InvalidPage 异常 len ():返回当前页面对象的个数 说明: Page 对象是可迭代对象,可以用 for 语句来 访问当前页面的每个对象 参考文档...用户认证 (使用Django认证系统) Django带有一个用户认证系统。...auth扩展字段 如果需要在默认auth表上扩展新的字段,phone 添加新的应用 定义模型类 继承 AbstractUser settings.py 指明 AUTH_USER_MODEL = ‘应用名...Django settings.py 添加新配置 STATIC_ROOT = '/home/tarena/项目名_static/static #注意 此配置路径为 存放所有正式环境需要的静态文件...执行该命令后,Django 将项目重所有静态文件 复制到 ,包括 Django 内建的静态文件【 admin 后台的样式】 Nginx 配置添加新配置 # file : /etc/nginx

    6.4K30

    Django教程(一)- Django视图与网址1.简介2.环境搭建3.安装pycharm4.Ubuntu下 正确安装VMware Tools5.Django主要模块6.Django基本命令7. Dj

    但是在Django,控制器接受用户输入的部分由框架自行处理,所以 Django 里更关注的是模型(Model)、模板(Template)和视图(Views),称为 MTV模式。...views.py 处理用户发出的请求,从urls.py对应过来, 通过渲染templates的网页可以将显示内容,比如登陆后的用户名,用户请求的数据,输出到网页。...创建数据库表 或 更改数据库表或字段 Django 1.7.1及以上 用以下命令 # 1. 创建更改的文件 python manage.py makemigrations # 2....、时区 LANGUAGE_CODE = 'zh-Hans' TIME_ZONE = 'Asia/Shanghai' admin注册booktest的模型 打开booktest/admin.py文件,注册模型...BookInfo的数据进行增删改查操作 问题:如果在str方法返回中文,在修改和添加时会报ascii的错误 解决:在str()方法,将字符串末尾添加“.encode('utf-8')” 自定义管理页面

    1.4K20

    37.Django1.11.6文档

    你有两个原因可能会自己定义Manager:Manager类添加额外的方法,或者修改Manager返回的原始QuerySet。...的相关说明) from django.contrib import admin from .models import Author @admin.register(Author) class AuthorAdmin...例如,您可能希望通过整数字段搜索,或使用外部工具(Solr或Haystack)。您必须确定通过搜索方法实现的查询集更改是否可能在结果引入重复项,并在返回值的第二个元素返回True。...admin 添加自定义验证 在管理员添加数据的自定义验证是很容易的。 ...示例 Paginator提供对象的一个列表,以及你想为每一分配的元素数量,它就会为你提供访问每一上对象的方法: >>> from django.core.paginator import Paginator

    24.3K80

    Django3.2边学边记—Adimn站点管理

    准备工作 创建管理员的用户名和密码:  1 python manage.py createsuperuser   根据提示创建用户名 密码 在admin.py中注册模型类 1234567 from django.contrib...类可以控制不同模型在Admin界面的展示方式,主要包括在列表的展示方式、添加修改的展示方式 上文中展示了TestAdmin类的一种注册方法,还有一种方法,就是使用装饰器注册,如下: 123 @admin.register...(Test)class TestAdmin(admin.ModelAdmin):    pass 大小 每页显示多少条数据,默认为每页显示100条数据,设置为20 12 class TestAdmin...你可以用empty_value_display 属性更改 123 from django.contrib import admin  ...  ...我的理解就是分组整体匹配(Django3.2新增),例如,如果用户搜索 "john winston" 或 'john winston',Django 会做相当于这个 SQL 的 WHERE 子句: 1

    1.2K00

    Django3.2边学边记—Adimn站点管理

    准备工作 创建管理员的用户名和密码:  1 python manage.py createsuperuser   根据提示创建用户名 密码 在admin.py中注册模型类 1234567 from django.contrib...类可以控制不同模型在Admin界面的展示方式,主要包括在列表的展示方式、添加修改的展示方式 上文中展示了TestAdmin类的一种注册方法,还有一种方法,就是使用装饰器注册,如下: 123 @admin.register...(Test)class TestAdmin(admin.ModelAdmin):    pass 大小 每页显示多少条数据,默认为每页显示100条数据,设置为20 12 class TestAdmin...你可以用empty_value_display 属性更改 123 from django.contrib import admin  ...  ...: 123456789101112 from XXX import Testfrom django.contrib import admin class TestAdmin(admin.ModelAdmin

    1.3K30

    Django—入门

    当前主流的开发语言Java、PHP、Python中都有MVC框架。 Web MVC各部分的功能 M全拼为Model,主要封装对数据库层的访问,对数据库的数据进行增、删、改、查操作。...1.定义模型类 模型类定义在models.py文件,继承自models.Model类。   说明:不需要定义主键列,在生成时会自动添加,并且值为自动增长。...在列表中点击"增加"可以进入增加Django会根据模型类的不同,生成不同的表单控件,按提示填写表单内容后点击"保存",完成数据创建,创建成功后返回列表。 ?...,BookInfoAdmin) admin.site.register(HeroInfo,HeroInfoAdmin) 上去 5.视图及URL 视图 对于django的设计框架MVT,用户在URL请求的是视图...,方法render包含3个参数: 第一个参数为request对象 第二个参数为模板文件路径 第三个参数为字典,表示模板传递的上下文数据 打开booktst/views.py文件,调用render的代码如下

    1.9K10

    35.Django2.0文档

    输入一下命令,如果没有报错说明说明数据库配置是正确的 >>> from django.db import connection >>> cursor = connection.cursor() 3.第一个模型...其它的django.contrib应用程序,django.contrib.redirects,其它从网上下在的第三方Django应用程序一样,都会自行添加到管理工具。  ...(3)添加过滤器 接下来,让我们为Book列表添加一些过滤器。...超级用户标志:它赋予用户在管理界面添加、修改和删除任何项目的权限。 如果一个用户帐号有这个标          志,那么所有权限设置(即使没有)都会被忽略。...普通的活跃,非超级用户的管理用户可以根据一套设定好的许可进入。 管理界面每种可编辑的对象(:books、authors、publishers)都有三种权限:创建许可,编辑许可和删除许可。

    11.3K100

    Django流程_菜鸟裹裹收费标准

    创建第一个项目 1、在合适位置创建一个目录 2、打开DOS进入到上一步创建的目录下 3、输入:django-admin startproject project 4、目录层级说明 manage.py _...、概述: 内容发布 公共访问 b、配置Admin应用 c、创建管理员用户 d、汉化 10、管理数据表 a、修改admin.py文件 b、自定义管理页面 属性说明: list_display list_filter...文件的INSTALLED_APPS添加django.contrib.admin”,默认是已经添加好的 c、创建管理员用户 执行:python manage.py createsuperuse...(Grades, GradesAdmin) 属性说明: 列表属性 list_display 显示字段 list_filter 过滤字段 search_fields 搜索字段 list_per_page...发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    1.3K30

    如何使用Django构建现代Web应用程序来管理客户信息并在Ubuntu 18.04上进行反应

    您可以按照如何在安装PPA时在Ubuntu 18.04上安装Node.js说明安装它们。...迁移是Django将您对模型所做的更改传播到数据库模式的方法。例如,这些更改可能包括添加字段或删除模型等内容。...该makemigrations命令将创建将添加模型更改的迁移文件,并将迁移文件更改的migrate应用于数据库。...例如,当用户API端点发送GET请求时,Django会调用相应的函数或API视图来处理请求并返回任何可能的结果。 我们还将使用序列化器。...添加API视图 在本节,我们将为我们的应用程序创建API视图,当用户访问对应于视图函数的端点时,Django将调用这些视图。

    13.9K83

    四、其它(一)ModelAdmin对象InlineModelAdmin对象重写admin模板Paginator对象Page对象示例

    激活:添加Django配置文件的MIDDLEWARE_CLASSES元组 每个中间件组件是一个独立的Python类,可以定义下面方法的一个或多个 _init _:无需任何参数,服务器响应第一个请求的时候调用一次...站点 通过使用startproject创建的项目模版,默认Admin被启用 1.创建管理员的用户名和密码 python manage.py createsuperuser 然后按提示填写用户名、邮箱、...密码 2.在应用内admin.py文件完成注册,就可以在后台管理维护模型的数据 from django.contrib import admin from models import * admin.site.register...(HeroInfo) 查找admin文件:在INSTALLED_APPS项中加入django.contrib.adminDjango就会自动搜索每个应用的admin模块并将其导入 ModelAdmin...) class HeroAdmin(admin.ModelAdmin): 通过重写admin.ModelAdmin的属性规定显示效果,属性主要分为列表、增加修改两部分 列表选项 “操作选项”的位置

    4.5K20

    Django 教程 --- Django 基础

    当您构建一个网站时,您总是需要一组类似的组件:处理用户身份验证(注册、登录、注销)的方法、网站的管理面板、表单、上传文件的方法等等。Django提供了现成的组件供您使用。...它是整个应用程序背后的逻辑数据结构,由数据库(通常是关系数据库,MySql、Postgres)表示 视图:视图是用户界面——当你渲染一个网站时,你在浏览器中看到的东西。...virtualenv env_site 通过此命令将目录更改为env_site cd env_site 转到env_site内的脚本目录并激活虚拟环境 cd Script 安装 pip install...让我们探索一下 移至projectName-> projectName-> urls.py并在标题中添加以下代码 from django.urls import include 现在,在网址格式列表,...Django Apps的主要特点是独立性,每个app都作为一个独立的单元来支持主项目。要了解更多关于Django的应用程序,请访问如何在Django创建应用程序?

    3.6K21

    Django学习笔记 1.7 自定义 admin 站点

    作者: iotisan 前言 这节笔记将更加深入地处理 admin 站点,包括修改表单更加直观呈现模型数据,快速添加关联对象,以及后台涉及的列表展示、过滤器、搜索框等操作。...1 自定义后台表单 polls/admin.py 通过 admin.site.register(Question) 注册 Question 模型,Django 能够构建一个默认的表单用于展示。...3 自定义后台更改列表 3.1 显示列表 默认情况下,Django 显示每个对象的 str() 返回的值。但有时如果我们能够显示单个字段,它会更有帮助。...为此,使用 list_display 后台选项,它是一个包含要显示的字段名的元组,在更改列表以列的形式展示这个对象: class QuestionAdmin(admin.ModelAdmin):...list_display = ('question_text', 'pub_date') 3.2 过滤器 再次编辑文件 polls/admin.py,优化 Question 变更:过滤器,使用 list_filter

    99120

    Django管理应用程序的高级配置在BookInstance模型的运用【Django

    Django管理应用程序 Django管理应用程序可以使用的模型自动构建可用于创建、查看、更新和删除记录的站点区域。这可以在开发过程节省大量时间,使测试模型和查看是否有正确的数据变得容易。...在同一目录,manage-Py创建一个超级用户。系统将提示输入用户名、电子邮件地址和强密码。...添加一个筛选器,以根据日期或其他选择值(账面付款状态)选择要列出的记录。...记录添加相关字段以允许内联编辑(例如,在创建作者记录时添加添加和编辑书本记录的功能)。...有时,同时添加相关记录是有意义的。例如,在同一个详细信息上同时显示书本信息和有关特定副本的信息可能是有意义的。

    1.7K20
    领券