Tho*_*she 16 django django-admin
新手Django问题:我希望Django管理员在多选小部件中显示更多行选择.我有一个非常长的列表可供选择,默认的4行只是不方便,特别是在滚动时.
现在,该窗口小部件呈现为选择倍数,但我希望它选择多个size ="12".理想情况下,这应该适用于特定字段,但我可以使用相同大小属性的所有字段呈现.
那么Django改变它的最佳位置在哪里?
Jas*_*ion 21
我在admin.py中通过为所有ManyToManyField项设置一个毯子大小来做到这一点,例如:
from django.contrib import admin
from django.forms import SelectMultiple
from django.db import models
from models import *
class RiverAdmin(admin.ModelAdmin):
formfield_overrides = { models.ManyToManyField: {'widget': SelectMultiple(attrs={'size':'10'})}, }
admin.site.register(River, RiverAdmin)
Run Code Online (Sandbox Code Playgroud)
jpi*_*pic 15
如果您有一个长期选择,将继续增长,我建议使用自动完成小部件.
无论如何,你可以:
为相关模型创建ModelForm
覆盖默认小部件,对于相关字段,
根据需要设置小部件的大小属性
class YourModelForm(forms.ModelForm):
class Meta:
model = YourModel
widgets = {
'your_field': forms.SelectMultiple(attrs={'size': 12})
}
class YourModelAdmin(admin.ModelAdmin):
form = YourModelForm
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
9080 次 |
| 最近记录: |