class warehousePeopleBase(ModelAdmin): model = warehousePeople menu_label = '库房人员出入库信息' # ditch this to use verbose_name_plural from model menu_icon = 'site' # change as required list_display = ['name', 'yearMonth', 'month', 'warehouse', 'subjectMatter'] list_filter = ('name', 'yearMonth', 'month', 'warehouse',) 怎么将list_filter 中的日期字段改为日期选择器?
时间: 2023-12-22 09:03:06 浏览: 97
你可以使用 Django 内置的日期选择器,将 `list_filter` 中的日期字段改为日期选择器。具体步骤如下:
1. 导入 `DateFieldListFilter`:
```python
from django.contrib.admin.filters import DateFieldListFilter
```
2. 创建一个新的 `ModelAdmin` 类并继承 `warehousePeopleBase`,在该类中重写 `list_filter` 属性:
```python
class warehousePeopleAdmin(warehousePeopleBase):
list_filter = (
('yearMonth', DateFieldListFilter),
('month', DateFieldListFilter),
'warehouse',
)
```
这里使用了 `DateFieldListFilter` 来替换日期字段,同时还保留了 `warehouse` 字段。如果你想要对其他日期字段也进行修改,只需在 `list_filter` 中添加相应的元组即可。
3. 在 `admin.py` 中注册新的 `ModelAdmin` 类:
```python
admin.site.register(warehousePeople, warehousePeopleAdmin)
```
现在,在 `warehousePeople` 模型的管理页面中,你会看到日期筛选器已经被替换成日期选择器了。
阅读全文