|
Перевод оригинальной статьи на http://www.djangoproject.com/documentation/contributing/#coding-style.
Пожалуйста, следуйте следующим правилам при разработке своих
приложений:
Если особо не оговорено иное, надо использовать стандарт
PEP 8.
Можно использовать утилиту аналогичную pep8.py
для проверки исходного кода.
Для отступа следует использовать четыре пробела.
Пользуйтесь символами подчёркивания (_), а
не выделениемРегистра при указании имён переменных,
функций и методов (т.е.,
poll.get_unique_voters(), а не
poll.getUniqueVoters()).
Используйте заглавные буквы в определении класса или
функций, которые возвращают классы (например,
InitialCaps).
Подготовьте все строки к переводу. За дополнительной
информацией обратитесь к главе «Интернационализация».
В строках документации используйте «активные слова», например:
def foo():
"""
Calculates something and returns the result.
"""
pass
а не:
def foo():
"""
Calculate something and return the result.
"""
pass
Не указывайте своё имя в коде. Политика Django предусматривает хранение имён авторов кода в файле AUTHORS.
В представлениях первым параметром всегда должен быть
request.
Делайте так:
def my_view(request, foo):
# ...
а не так:
def my_view(req, foo):
# ...
Имена полей должны определяться в нижнем регистре с использованием символа подчёркивания.
Делайте так:
class Person(models.Model):
first_name = models.CharField(max_length=20)
last_name = models.CharField(max_length=40)
а не так:
class Person(models.Model):
FirstName = models.CharField(max_length=20)
Last_Name = models.CharField(max_length=40)
Класс Meta должен описываться
после определения полей, отделённый
от них пустой строкой.
Делайте так:
class Person(models.Model):
first_name = models.CharField(max_length=20)
last_name = models.CharField(max_length=40)
class Meta:
verbose_name_plural = 'people'
а не так:
class Person(models.Model):
first_name = models.CharField(max_length=20)
last_name = models.CharField(max_length=40)
class Meta:
verbose_name_plural = 'people'
и не так:
class Person(models.Model):
class Meta:
verbose_name_plural = 'people'
first_name = models.CharField(max_length=20)
last_name = models.CharField(max_length=40)
Порядок внутренних классов модели и стандартных методов
должен быть таким (ничто из нижеперечисленного не
является обязательным):
Если для модели определена опция choices,
определите выбор в виде кортежа кортежей, использовав
заглавные буквы для его имени. Определение лучше
помещать в начале файла с моделями или перед
классом. Пример:
GENDER_CHOICES = (
('M', 'Male'),
('F', 'Female'),
)
|
Мой луч
Многообразие света
|
|
|
на поддержку перевода
|
|
Ускорить процесс перевода!
R130494980980
Z425285133788
E112528079659
U327380922061
|