0
我正在使用django管理员,并且想要更改“estado_material”字段值的字体颜色,如果它们可用“Disponible”或不是“Enpréstamo”。我的models.py:django admin:根据内容更改单元格颜色值
from django.db import models
class Material(models.Model):
identificacion=models.CharField(max_length=30, verbose_name='Identificación del material')
num_com=models.CharField(max_length=30, verbose_name='Número')
nombre_sp=models.CharField(max_length=30, verbose_name='Nombre científico')
coleccion=models.CharField(max_length=30, verbose_name='Colección')
descripcion=models.CharField(max_length=1000, verbose_name='Descripción')
localidad=models.CharField(max_length=30, verbose_name='Localidad')
estratigrafia=models.CharField(max_length=1000, verbose_name='Estratigrafía')
colector=models.CharField(max_length=130, verbose_name='Colector/es')
observaciones=models.CharField(max_length=1000, verbose_name='Observación')
ubicacion=models.CharField(max_length=130, verbose_name='Ubicación')
class Meta:
verbose_name = "Material"
verbose_name_plural = "Materiales"
def __str__(self):
return self.num_com
def estado_material(self):
if Prestamos.objects.filter(material__num_com=self.num_com).exists():
return "En préstamo"
else:
return "Disponible"
和我的admin.py:
from django.contrib import admin
from django.forms import TextInput, Textarea
from django.db import models
from coleccion.models import Material,
class MaterialAdmin(admin.ModelAdmin):
list_display = ('num_com', 'identificacion', 'descripcion','ubicacion', 'estado_material')
search_fields = ('num_com', 'identificacion', 'descripcion','ubicacion')
formfield_overrides = {
models.CharField: {'widget': TextInput(attrs={'size':'40'})},
models.TextField: {'widget': Textarea(attrs={'rows':4, 'cols':80})},
}