django - 我可以将搜索框添加到 Django 管理员添加页面吗?
问题描述
在 Django 3.0 应用程序中,我有一个捐赠者模型,其中包含捐赠者国会选区的外键:
# models.py
class Donor(models.Model):
"""A class to represent an individual donor"""
name = models.CharField(
help_text = "Donor's name"
)
district = models.ForeignKey(
District,
help_text = "Donor's congressional district"
)
class District(models.Model):
"""A class to represent a U.S. congressional district"""
dist_name = models.CharField(
help_text = "District name"
)
在捐赠者的管理员添加页面中,有一个地区的下拉选择菜单。问题是美国有 435 个国会选区。每次添加捐助者时滚动浏览的内容非常多,所以我想添加一个搜索框。
Django 有能力定义搜索字段。我试图这样做:
# admin.py
@admin.register(Donor)
class DonorAdmin(admin.ModelAdmin):
search_fields = ['district']
这并不影响捐助者添加页面。“地区”仍然显示为一个巨大的下拉菜单,并且页面上的任何地方都没有搜索功能。
search_fields
文档具体说
设置 search_fields 以启用管理员更改列表页面上的搜索框。
强调我的:search_fields
似乎仅适用于“更改列表”页面,而不适用于“添加”页面。我想这就是为什么我的尝试没有奏效。
是否可以将搜索框添加到 Django 管理员添加页面?
解决方案
不,您不能将搜索框添加到 django 管理页面。
推荐阅读
- reactjs - 使用 useRef 将组件滚动到视图中
- r - 如何在加载到全局环境中时读取 csv 文件?
- python - 具有位域的 Python Ctypes 结构与 C 中的结构具有不同的内存布局
- android - 使用“文本到语音”暂停和恢复文本到带有 Android Studio 的 android
- javascript - 在 infoWindow 关闭 Google 地图后将图标更改回默认状态
- python - Python:当用户点击停止按钮时停止谷歌录音
- android - UIThread 上有一个片段吗?
- python - TypeError:在python中尝试在pandas中逐行获取两列中的最小值时出现无效键错误
- python - 对多个参数的列表进行排序,但只有一个参数以相反的顺序排列
- c# - 有没有办法比较列表对象并添加特定项目