我正在尝试在TextField
上显示list_display
的前10个字符
是否可以在管理界面中使用?
答案 0 :(得分:13)
您可以定义一个返回字段前10个字符的callable,并将其添加到list_display
。
更多信息请参阅list_display
的Django文档。
答案 1 :(得分:2)
myapp/admin.py
from django.contrib import admin
from django.utils.text import Truncator
from django.db import models
from .models import Product
def truncated_name(obj):
name = "%s" % obj.name
return Truncator(name).chars(70)
class ProductAdmin(admin.ModelAdmin):
list_display = ['id', truncated_name, 'category', 'timestamp',]
list_display_links = [truncated_name]
list_filter = ['category']
class Meta:
model = Product
你也可以覆盖这样的字段:
formfield_overrides = {
models.CharField: {'widget': TextInput(attrs={'size': '20'})},
models.TextField: {'widget': Textarea(attrs={'rows': 1, 'cols': 40, 'style': 'height: 1.5em;'})},
}