Django Admin Cookbook-35如何使用带有大量对象的FK管理模型

35.如何使用带有大量对象的FK管理模型?

你可以通过如下代码创建大量Category对象:

categories = [Category(**{"name": "cat-{}".format(i)}) for i in range(100000)]
Category.objects.bulk_create(categories)

现在,Category拥有超过100000个对象,当您进入Hero修改页面是时,类别字段将是一个包含100000个选择下拉列表。这将使页面变慢并且下拉菜单难以使用。

你可以通过设置raw_id_fields,来更改后台对字段的处理方式:

@admin.register(Hero)
class HeroAdmin(admin.ModelAdmin, ExportCsvMixin):
    ...
    raw_id_fields = ["category"]

这会将Hero管理页面更改为更改为:

添加类别弹出窗口,显示如下。

返回目录

原文地址:https://www.cnblogs.com/superhin/p/12192277.html

时间: 2024-10-10 10:38:32

Django Admin Cookbook-35如何使用带有大量对象的FK管理模型的相关文章

Django Admin Cookbook 中文版

英文原版 链接 http://books.agiliq.com/projects/django-admin-cookbook/en/latest/ Django Admin Cookbook-如何定制和使用Django Admin管理后台 这是一本关于如何使用和定制Django Admin管理后台的书,它采用了我们所回答的,大约40个常见问题和基本任务的方式编写. 这些章节基于一组通用Django模型来讲解,你可以在此处详细阅读(本书中使用的模型). 简单的说,我们建立了两个Django应用,分

Django admin操作

  无名小妖     昵称:无名小妖园龄:1年6个月粉丝:22关注:1 +加关注 搜索 常用链接 我的随笔 我的评论 我的参与 最新评论 我的标签 我的标签 Python(1) python3(1) 随笔分类 python3(171) zabbix(10) 前端(5) 算法(9) 随笔档案 2018年2月 (9) 2018年1月 (20) 2017年12月 (2) 2017年11月 (1) 2017年9月 (14) 2017年8月 (6) 2017年7月 (7) 2017年6月 (58) 201

Django admin 中抛出 'WSGIRequest' object has no attribute 'user'的错误

这是Django版本的问题,1.9之前,中间件的key为MIDDLEWARE_CLASSES, 1.9之后,为MIDDLEWARE.所以在开发环境和其他环境的版本不一致时,要特别小心,会有坑. 将settings里的MIDDLEWARE_CLASSES默认配置顺序改成如下 MIDDLEWARE_CLASSES = [ 'django.middleware.security.SecurityMiddleware', 'django.middleware.common.CommonMiddlewar

Django Admin site 显示问题

Django Admin site 显示问题 今天配置了一下Django admin site,可是admin site的显示有一些问题,当我打开源码.訪问里面的admin 的css 文件时候,http://localhost:8000/static/admin/css/base.css, 却得到了一个404界面错误. 这里提供几个解决方式: 1. 在 settings.py 文件内, 把 django.contrib.staticfiles 增加到 INSTALLED_APPS 在又一次启动s

Django admin 的 9 个技巧

Tip 1:Django admin 后台不限于用 Django 开发的网站 虽然 Django admin 管理界面可以非常友好的用在 Django 项目的其它部分,它同样可以很容易用于其它像传统的数据库或具有一个可怕的的管理界面的网站.而且这也是评估 Django 是否会满足您的需求的最佳途径. 你需要做的仅是: 在你的 Django 项目中建立一个新的应用,并确保你已经连接好传统数据库 ,通过 settings.py 文件中的 DATABASES 的设置. 将你的数据表定义为 Django

django admin页面样式丢失问题

wamp 配置django admin页面样式丢失问题 第一种方法:在apache配置文件httpd.conf中加入如下代码:Alias /static "E:\Python27\Lib\site-packages\django\contrib\admin\static"<Directory "E:\Python27\Lib\site-packages\django\contrib\admin"> Options Indexes FollowSymLin

Django admin

Django admin使用 官方文档: https://docs.djangoproject.com/en/dev/ref/contrib/admin/# 一.list_display = ('title', 'pub_date', 'update_time',) ModelAdmin.list_display  class Person(models.Model): first_name = models.CharField(max_length=50) last_name = models

Django admin site(一)ModelAdmin Options

Admin管理界面是django的杀手级应用.它读取你模式中的元数据,然后提供给你一个强大而且可以使用的界面,网站管理者可以用它立即向网站中添加内容. 要使用admin,可以按照下面的步骤: 将'django.contrib.admin'加入setting的INSTALLED_APPS配置中. 保证INSTALLED_APPS中包含'django.contrib.auth','django.contrib.contenttypes','django.contrib.messages'和'djan

The django admin site之list_display

参考文章: https://docs.djangoproject.com/en/dev/ref/contrib/admin/  (The Django admin site) List_display models.py from django.db import models from django.utils.html import format_html class Author(models.Model):     name = models.CharField(max_length=3