python - 使用查询从特定表中获取数据并将其显示在 django 的管理端
问题描述
我正在做一个Django
项目,我想从特定表中获取数据并将其显示在管理端。
我有一个Company
模型,我使用admin.site.register(Company, Company_Admin)
. 现在,我想在从表中查询所有公司后获取所有公司,并在管理站点中显示结果。
class Company(models.Model):
name = models.CharField(default=None,max_length=200)
description = models.TextField(default=None)
url = models.CharField(max_length=200)
published = models.BooleanField()
createdOn = models.DateTimeField(default=datetime.utcnow)
updatedOn = models.DateTimeField(default=datetime.utcnow)
keywords = models.ManyToManyField(Keyword)
def __unicode__(self):
return self.text
class CompanyAdmin(admin.ModelAdmin):
list_display = ['name', 'url', 'description', 'published', 'createdOn', 'updatedOn']
list_filter = ['name']
search_fields = ['name']
filter_horizontal = ('keywords', )
admin.site.register(Company, CompanyAdmin)
现在我想在管理面板中创建一个选项,它将显示所有已发布的公司,也就是说,甚至不显示未发布的公司。
解决方案
尝试在“已发布”的 CompanyAdmin 中添加 list_filter:
list_filter = ['name','published']
因此,您可以在右侧找到一个窗格,您可以在其中随意过滤掉。(我正在考虑您没有覆盖默认管理模板。)
推荐阅读
- go - 使用 req.Body 中的值更新内存中的对象
- javascript - WordPress 将元素注入 wp.element.createElement
- python - Ansible 将 int 转换为 float
- python - 如何更新表的所有行中的列?
- python - 使用依赖于另一列的布尔值创建一个新的 Pandas df 列
- django - Django 自动测试不适用于 heroku postgresql 数据库
- java - 在java中发送带有正文的post请求
- google-bigquery - bigquery ORDER BY 子句使用哪种排序算法?
- javascript - 如何删除输入javascript中数字的最后一位
- javascript - 在 Chrome 扩展程序中随机发送电子邮件变量