Имена настраиваемых полей mongoengine

Я определил тип документа в monoengine следующим образом:

from mongoengine import *

import datetime

class User(Document):
    username = StringField(min_length = 1, max_length = 20, regex = '(\w+)', required = True, unique = True)
    password = StringField(min_length = 5, required = True)
    email = EmailField(required = True, unique = True)
    name = StringField(min_length = 3, max_length = 40, required = True)
    date_created = DateTimeField(default = datetime.datetime.utcnow, required = True)

Однако в случае ошибки имя поля является переменной-членом. Для некоторых полей это будет выглядеть довольно некрасиво для пользователя. Например, «date_created» действительно должно означать «Дата создания».

Итак, я пытаюсь найти способ сказать Mongoengine использовать «более красивое» имя вместо имени переменной-члена, но я не могу найти способ. Я пробовал name и verbose_name, но они, похоже, ничего не делают, и я просмотрел документы, поэтому буду признателен за любую помощь.


person Tom Leese    schedule 23.12.2011    source источник


Ответы (1)


verbose_name используется для вывода внешнему пользователю, и вам решать выводить verbose_name вместо имени поля при рендеринге - например, в форме.

person Ross    schedule 23.12.2011
comment
Итак, я не могу просто распечатать содержимое исключения, где вместо этого используется verbose_name? - person Tom Leese; 23.12.2011
comment
Трассировка исключений обычно предназначена для использования разработчиками, а не конечными пользователями, и поэтому имя атрибута объекта модели является более явным. Можете ли вы уточнить, чего вы пытаетесь достичь/как вы используете исключения? - person Ross; 23.12.2011
comment
В настоящее время я пишу пользователю str (исключение), поскольку он работает хорошо. Однако, если я не могу изменить текст, который находится в исключении, которое выдает MongoEngine, то я могу отформатировать его сам. - person Tom Leese; 23.12.2011
comment
Хорошо. В настоящее время невозможно добавить запрос функции на github, и я оценю. Если вы можете добавить тест, демонстрирующий, что вы в настоящее время делаете / ожидаете, это будет полезно! - person Ross; 23.12.2011