Kos*_*Kos 8 python django django-admin
这种情况在我的项目中经常发生:
Foo具有多个ForeignKey字段的模型,其中一个是指模型BarBar有数百万个实例Foo的管理页面;Django 尝试Bar一次检索所有s(将它们显示在组合框中)并且服务器过载Foo管理员并添加bar到raw_id_fields.我想防止这种情况在未来发生,最好通过某种方式声明(一劳永逸)Bar有很多行,并且应该始终将引用它的字段视为raw_id_fields所有管理页面中列出的字段。这有可能吗?
来自文档:
foreignKey由django.forms.ModelChoiceField表示,它是一个ChoiceField,其选择是一个模型QuerySet。
ModelChoiceField 扩展了 Field,因此有一个可以被滥用的小部件属性 https://github.com/django/django/blob/master/django/forms/fields.py#L49
将其添加到项目文件中的某个位置。
from django.forms import ModelChoiceField
from django.contrib.admin.widgets import ForeignKeyRawIdWidget
ModelChoiceField.widget = ForeignKeyRawIdWidget
Run Code Online (Sandbox Code Playgroud)
缺点:这也会发生在非管理表单上
| 归档时间: |
|
| 查看次数: |
924 次 |
| 最近记录: |