Django Admin面板显示字段最大长度而非字段名问题求助
解决Django Admin字段显示最大长度而非字段名的问题
问题出在你定义CharField的方式上——你把max_length的数值直接当成第一个参数传了,但CharField的第一个参数是verbose_name(字段的显示名称),第二个参数才是max_length。
比如你写name=models.CharField(30)时,Django会把30当成这个字段的显示名称,所以Admin面板里就显示30而不是字段名了。
把所有这类写法改成明确指定max_length参数即可:
修正后的SituationFlag模型:
class SituationFlag(models.Model): name=models.CharField(max_length=30) slug=models.SlugField(null=False,blank=True, unique=True,editable=False,max_length=30) description =models.CharField(max_length=200) cssclass=models.CharField(max_length=30) def __str__(self) -> str: return self.name def save(self,*args,**kwargs): self.slug=slugify(self.name) super().save(*args,**kwargs)
如果需要自定义显示名称,还可以手动添加verbose_name参数,比如:
name=models.CharField(max_length=30, verbose_name="标识名称")
修正后刷新Admin页面,字段就会正常显示名称了。
内容的提问来源于stack exchange,提问作者ftdeveloper
相关产品推荐
相关产品推荐

