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

Django admin.py过滤器中的HTML输入文本框

在Django中,admin.py是一个用于定义管理界面的模块。过滤器是一个用于在管理界面中搜索和过滤数据的功能。在admin.py中,可以使用list_filter属性来定义过滤器。

admin.py中,HTML输入文本框可以用于自定义过滤器的显示样式。为了实现这个功能,可以使用Django的SimpleListFilter类来创建自定义过滤器。在自定义过滤器中,可以使用HTML标签来定义输入文本框的样式。

例如,以下代码定义了一个自定义过滤器,其中包含一个HTML输入文本框:

代码语言:python
代码运行次数:0
复制
from django.contrib import admin
from django.utils.html import format_html
from django.utils.translation import gettext_lazy as _

class CustomFilter(admin.SimpleListFilter):
    title = _('custom filter')
    parameter_name = 'custom_filter'

    def lookups(self, request, model_admin):
        return (
            ('text_input', format_html('<input type="text" name="custom_filter" value="{}">', self.value())),
        )

    def queryset(self, request, queryset):
        if self.value():
            return queryset.filter(some_field__icontains=self.value())
        else:
            return queryset

在上面的代码中,lookups方法返回一个包含HTML输入文本框的元组。queryset方法使用输入的文本框值来过滤查询集。

然后,可以将自定义过滤器添加到admin.py中的模型管理器中:

代码语言:python
代码运行次数:0
复制
from django.contrib import admin
from .models import MyModel

class MyModelAdmin(admin.ModelAdmin):
    list_filter = (
        'custom_filter',
        # other filters...
    )

admin.site.register(MyModel, MyModelAdmin)

这样,在Django管理界面中,就可以看到一个自定义的HTML输入文本框过滤器。

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

相关·内容

Django 模板HTML中 变量 过滤器 标签 的使用方法

最近在自学django,整理常用模块如下 一、变量 1.变量的形式是:{{variable}}, 当模板引擎碰到变量的时候,引擎使用变量的值代替变量。...二、过滤器 1.可以通过过滤器来修改变量的显示,过滤器的形式是:{{ variable | filter }},管道符号’|’代表使用过滤器 2.过滤器能够采用链式的方式使用,例如...:{{ text | escape | linebreaks }} 3.过滤器还可以带参数,例如: {{ bio|truncatewords:30 }} 4.过滤器的参数中如果带有空格...,那么需要用引号引起来,例如:{{ list | join : “, “}} 5.django中30个内建的过滤器 (1)add 使用形式为:...,记住:1代表最右边的数字,如果value不是合法输入, 那么会返回所有原有值。

4K40

Django 进阶学习 - 文本框过滤

Django 进阶学习 - 文本框过滤 Posted May 03, 2016 默认情况下django可以对列进行过滤, 但大多数是对Relationship列通过list_filter 直接指定field...name就可以方便的进行过滤了, 但是如果实现文本框输入过滤属性, 然后通过按钮触发事件后来过滤只能通过自定义Django filter来实现 首先自定义一个filter类 filters.py 默认情况下如果没有...self.value(): return queryset.filter(ip__iexact=self.value()) # 这里自定义过滤条件. self.value() 是文本框输入的值...自定义filter template admin/textinput_filter.html, 直接放到本项目的template目录即可, 千万不要放到django包目录下的admin template...目录, 如果你了解django 模版检索的过程优先级, 你应该知道我说的意思.

1.3K10
  • 【HTML】HTML 注册表单案例 ② ( 表格中的内容设置 | 下拉列表 | 输入文本框 | 复选框 | 文本域 | 图片按钮 | 链接 )

    文章目录 一、表格中的内容设置 1、设置下拉列表 2、设置输入文本框 3、设置复选框 4、设置文本域 5、设置图片按钮 6、设置链接 二、完整代码示例 一、表格中的内容设置 ---- 1、设置下拉列表...枣强市 深州市 桃城区 运行效果 : 2、设置输入文本框...在 表格中的 td 标签中 , 设置 复选框 , 将 input 表单类型设置为 checkbox , 为其设置不同的 name 用于识别复选框 , 复选框后面跟着 选项名称 ; 代码示例 : 中 , 设置 input 表单 , type 类型设置为 image 类型 , src 设置图片的 相对路径 ; 要将 图片按钮与 第二列 进行对齐 , 在该行表格中 , 第一个单元格 需要空出来...DOCTYPE html> html lang="en"> 用户注册

    6.2K20

    35.Django2.0文档

    过滤管道可以被* 套接* ,既是说,一个过滤器管道的输出又可以作为下一个管道的输入,如此下去 {{ my_list|first|upper }} #查找列表的第一个元素并将其转化为大写。...标签,模板引擎立即装载其父模板,即本例中的 base.html 。...C:根据用户输入委派视图的部分,由 Django 框架根据 URLconf 设置,对给定 URL 调用适当的Python 函数  由于 C 由框架自行处理,而 Django 里更关注的是模型(Model...应用程序`` django.contrib.auth`` 包含自身的`` admin.py`` ,所以Users和Groups能在管理工具中自动显示。...在这个输入框中,你输入什么呢? publisher的数据库ID号。 考虑到人们通常不会记住这些数据库ID,管理工具提供了一个放大镜图标方便你输入。

    11.3K100

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

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

    99420

    Python 图形化界面基础篇:获取文本框中的用户输入

    Python 图形化界面基础篇:获取文本框中的用户输入 引言 在 Python 图形用户界面( GUI )应用程序中,文本框是一种常见的控件,用于接收用户的输入信息。...获取用户在文本框中输入的文本是许多应用程序的核心功能之一。在本文中,我们将学习如何使用 Python 的 Tkinter 库来创建文本框,以及如何获取用户在文本框中输入的文本内容。...步骤4:获取文本框中的用户输入 要获取文本框中的用户输入,我们可以使用文本框的 get() 方法。这个方法将返回文本框中当前的文本内容。...定义了一个名为 get_user_input 的函数,该函数使用文本框的 get() 方法获取用户在文本框中输入的文本,并将其显示在标签 result_label 中。...结论 在本文中,我们学习了如何使用 Python 的 Tkinter 库来创建文本框,并获取用户在文本框中输入的文本。文本框是许多 GUI 应用程序中的重要组件,用于用户输入和交互。

    1.7K30

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

    但有时需要自定义后台的显示,可以通过继承admin.ModelAdmin实现: # polls/admin.py from django.contrib import admin from .models...我们想要在创建问题时直接添加很多个选项:将polls/admin.py修改为如下内容: from django.contrib import admin from .models import Choice...为此,使用 list_display属性,它是一个包含要显示的字段名的元组,在更改列表页中以列的形式展示这个对象: class QuestionAdmin(admin.ModelAdmin):...编辑文件 polls/admin.py,将以下代码添加至 QuestionAdmin: list_filter = ["pub_date"] 这样做添加了一个“过滤器”侧边栏,允许人们以 pub_date...当输入待搜项时,Django 将搜索 question_text 字段。

    24240

    Django Admin 后台自定制技巧

    Django最强大的部分之一是自动管理界面。它从模型中读取元数据,以提供一个快速的,以模型为中心的界面,受信任的用户可以在其中管理您网站上的内容。管理员的建议用法仅限于组织的内部管理工具。...自动化运维" # list_display = 你需要展示的字段应该写在这里,此处是数据库中的字段 list_display = ("hostname","hostaddr","hostCPU...,我们自己增加新的. # name: admin.py from django.contrib import admin from MyWeb.models import * # 必须继承ModelAdmin...定制: 简单的过滤器使用技巧. # name: settings.py LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'Asia/Shanghai' # name: apps.py...,我们自己增加新的. # name: admin.py from django.contrib import admin from MyWeb.models import * # 必须继承ModelAdmin

    1.4K20

    在 Django 中获取已渲染的 HTML 文本

    在Django中,你可以通过多种方式获取已渲染的HTML文本。这通常取决于你希望在哪个阶段获取HTML文本。下面就是我在实际操作中遇到的问题,并且通过我日夜奋斗终于找到解决方案。...1、问题背景在 Django 中,您可能需要将已渲染的 HTML 文本存储在模板变量中,以便在其他模板中使用。例如,您可能有一个主模板,其中包含内容部分和侧边栏。...rendered_html = render_to_string('login_form.html')​ # 将已渲染的 HTML 文本存储在模板变量中 context = {...my_tags %}​{% render_html 'login_form.html' %}3、Django 内置函数Django 内置了一些函数可以帮助您获取已渲染的 HTML 文本,这些函数包括:...这些方法可以帮助我们在Django中获取已渲染的HTML文本,然后我们可以根据需要进行进一步的处理或显示。

    11610

    Django 上传图片和Admin站点5.2

    上传图片 当Django在处理文件上传的时候,文件数据被保存在request.FILES FILES中的每个键为中的name 注意:FILES只有在请求的方法为...,默认Admin被启用 1.创建管理员的用户名和密码 python manage.py createsuperuser 然后按提示填写用户名、邮箱、密码 2.在应用内admin.py文件完成注册,就可以在后台管理中维护模型的数据...项中加入django.contrib.admin,Django就会自动搜索每个应用的admin模块并将其导入 ModelAdmin对象 ModelAdmin类是模型在Admin界面中的表示形式 定义:定义一个类...列表类型 在列表中,可以是字段名称,也可以是方法名称,但是方法名称默认不能排序 在方法中可以使用format_html()输出html内容 在models.py文件中 from django.db import...(BASE_DIR, 'templates')], 从Django安装的目录下(django/contrib/admin/templates)将模板页面的源文件admin/base_site.html拷贝到第一步建好的目录里

    47930

    Django 1.10中文文档-第一个应用Part7-自定义管理站点

    在QuestionAdmin中添加下面的代码: list_filter = ['pub_date'] 它添加了一个“过滤器”侧边栏,这样就可以通过pubdate字段来过滤显示question: ?...过滤器显示的筛选类型取决与你过滤的字段,由于pub_data是DateTimeField,所以Django就自动给出了“今天”、“过去7天”、“本月”、“今年”这几个选项。 这一切进展顺利。...接下来,在刚才创建的templates中创建一个admin目录,将admin/base_site.html模板文件拷贝到该目录内。...当Django渲染admin/base_site.html的时候,这个模板语言将被生成最终的html页面,就像Part3中一样。 注意任何Django管理站点的默认模板都可以重写。...想要重写一个模板文件,只需要做和重写base_site.html相同的操作就行——将它从默认的目录拷贝到你自定义的目录中,然后修改它。

    3.6K60

    Django 中 自定义过滤器的创建和使用,以时间过滤器为例

    本项目中的python文件名字为print_timestamp.py 在创建了存储过滤器的文件后,接下来就是在这个文件中写过滤器了。...过滤器实际上就是python中的一个函数,只不过是把这个函数注册到模板库中,以后在模板中就可以使用这个函数了。...但是这个函数的参数有限制,第一个参数必须是这个过滤器需要处理的值,第二个参数可有可无,如果有,那么就意味着在模板中可以传递参数。并且过滤器的函数最多只能有两个参数。...在写完过滤器后,再使用 django.template.Library对象注册进去。...在HTML里面可以将数据库查询出来的时间进行展示,但是要转化为我们要的时间 我们首先是在HTML里面引入过滤器 使用 以上就是自定义过滤器,并且如何使用的流程

    1.4K20

    django后台管理-admin

    0922自我总结 django后台管理-admin 一.模型注册 admin.py 注册方式一: #在对于注册的app中的admin文件中导入模型然后注册模型 admin.site.register(导入的模型类...) 注册方式二该方法是Django1.7的版本新增的功能: from django.contrib import admin from blog.models import Blog #Blog模型的管理器...#listdisplay设置要显示在列表中的字段(id字段是Django模型的默认主键) list_display = ('id', 'caption', 'author', 'publish_time...一般ManyToManyField多对多字段用过滤器;标题等文本字段用搜索框;日期时间用分层筛选。 过滤器如果是外键需要遵循这样的语法:本表字段__外键表要显示的字段。...如:“user__user_name” 3、颜色显示 from django.db import models from django.contrib import admin from django.utils.html

    88810

    Django 中 自定义过滤器的创建和使用,以时间过滤器为例

    本项目中的python文件名字为print_timestamp.py 在创建了存储过滤器的文件后,接下来就是在这个文件中写过滤器了。...过滤器实际上就是python中的一个函数,只不过是把这个函数注册到模板库中,以后在模板中就可以使用这个函数了。...但是这个函数的参数有限制,第一个参数必须是这个过滤器需要处理的值,第二个参数可有可无,如果有,那么就意味着在模板中可以传递参数。并且过滤器的函数最多只能有两个参数。...在写完过滤器后,再使用 django.template.Library对象注册进去。 ?...这个是创建了过滤器了,但是如何使用呢? 在HTML里面可以将数据库查询出来的时间进行展示,但是要转化为我们要的时间 我们首先是在HTML里面引入过滤器 ? 使用 ?

    1.9K10
    领券