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})},
}