Хостинг Django от «Джино»
Table of contents

Настройка меток полей

На форме редактирования в интерфейсе администратора каждая метка поля создаётся на основе имён полей модели. Алгоритм простой: Django просто заменяет символы подчеркивания на пробелы и делает первую букву заглавной, например, поле publication_date модели Book будет иметь метку «Publication date».

Тем не менее, автоматическое преобразование имени поля в текст метки не всегда приводит к удовлетворительному результату, поэтому хотелось бы иметь возможность настраивать их самостоятельно. Вы можете это сделать, указав параметр verbose_name для соответствующего поля модели.

Например, ниже показано как мы можем изменить метку для поля Author.email на «e-mail»:

class Author(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=40)
    email = models.EmailField(blank=True, verbose_name='e-mail')

Сделав это изменение и перезапустив сервер, вы увидите новую метку на форме редактирования автора.

Следует отметить, что не нужно делать первую букву заглавной, если слово не пишется всегда с заглавной (например, «USA state»). Django при необходимости самостоятельно сделает первую букву заглавной, и оставит verbose_name без изменения, где заглавная буква не нужна.

Наконец, отметим, что вы можете передавать verbose_name как позиционный аргумент — более компактный синтаксис. Этот пример эквивалентен предыдущему:

class Author(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=40)
    email = models.EmailField('e-mail', blank=True)

Такой вариант не подходит для полей ManyToManyField и ForeignKey, потому что для них первым аргументом должна быть модель. Для этих случаев следует явно указывать аргумент verbose_name.


Ищем Python программистов

Found misprint?
Select it with the mouse and hit Enter
Ctrl-Enter
Processed:
33 1 199 25


The full repository of DjangoBook translation you can get on GitHub.
We appreciate your patches!

We are glad to hear your questions, comments or suggestions!
(Open in new tab)

Users number: 601

Русская группа

на поддержку перевода
Яндекс Яндекс.Деньги Хочу такую же кнопку
Ускорить процесс перевода!
ЯМ:41001223475816


© 2008-2012 Ruslan Popov @ gmail.com Powered by Django 1.2.5