Существует ли предпочтительное соглашение о присвоении имен для создания приложения Django, состоящего больше чем из одного слова? Например, какое из следующего предпочтено?
my_django_app
my-django-app
mydjangoapp
Рекомендуемое решениеВ то время как все они могут быть опциями 1 и 3, синтаксически позволяются, там предпочтение? При рассмотрении способа, которым Django создает имена таблиц путем объединения названия приложения и имени модели с подчеркиванием, я склоняюсь против опции № 1.
Мысли?
Это должны быть допустимые имена пакетов. Это исключает 2 («import my-django-app» будет синтаксической ошибкой). PEP 8 говорит:
Модули должны иметь короткие, все в нижнем регистре имена. Подчеркивания можно использовать в имени модуля, если это улучшает читаемость. Пакеты Python должны также имеют короткие, все в нижнем регистре имена, хотя использование подчеркивания обескуражен.
Итак, 1 и 3 действительны, но 3 будет рекомендуемым подходом.
Мои голоса за 1 и 3, но вы можете проверить несколько популярных приложений: http://www.django-cms.org/ http://geodjango.org/
Имена каталогов приложений должны быть действительными именами пакетов Python. Это означает, что вариант 2 совершенно неприемлем в качестве имени пакета, хотя его все еще можно использовать для других целей, например, для документации. В конце концов, все сводится к личному стилю. Если вам больше нравится вариант 3, используйте его.