我一直在做一些 future 应用程序的模型,并且在为工作模型的每个条目添加 verbose_name 和 verbose_name_plural 之后,为了让它变得“漂亮”,我发现在验证时,Django 不会就像那样,所以它说:
File "/home/andor/Documentos/desarrollo/grundymanage/../grundymanage/concursantes/models.py", line 4, in <module>
class Concursante(models.Model):
File "/home/andor/Documentos/desarrollo/grundymanage/../grundymanage/concursantes/models.py", line 7, in Concursante
nombre_artistico = models.CharField(verbose_name='Nombre Artístico', verbose_name_plural='Nombres Artísticos', max_length=50)
TypeError: __init__() got an unexpected keyword argument 'verbose_name_plural'
我的模型是这样开始的:
# -*- encoding: utf-8 -*-
from django.db import models
class Concursante(models.Model):
nombre = models.CharField(verbose_name='Nombre', max_length=30)
apellidos = models.CharField(verbose_name='Apellidos', max_length=50)
nombre_artistico = models.CharField(verbose_name='Nombre Artístico', verbose_name_plural='Nombres Artísticos', max_length=50)
为什么“他”不希望那里有一个复数冗长的名字?不能和 verbose_name 一起生活吗?
仅供引用,这是我的软件版本:
- Ubuntu 8.04
- python 2.5.2
- Django“1”“0”“最终版”
- Django ubuntu 包版本“1.0-1ubuntu1”
最佳答案
不幸的是,verbose_name_plural
不是该字段的一个选项。它是模型本身的元选项。字段没有复数名称,因为除非它是多对多关系(在这种情况下 Django 将对关系指向的模型使用复数形式),否则该字段中只有一个实体。
这是文档部分:http://docs.djangoproject.com/en/dev/topics/db/models/#id3
关于python - verbose_name_plural 在模型中出乎意料?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/677172/