Существует ли соглашение об именах для приложений Django

существует ли предпочтительное соглашение об именах для создания приложения Django, состоящего из более чем одного слова? Например, какой из следующих вариантов предпочтительнее?

  1. my_django_app
  2. my-django-app обновление: не допускается синтаксически
  3. mydjangoapp рекомендуемое решение

пока все они могут быть опции 1 и 3 синтаксически разрешено, есть ли предпочтения? Глядя на то, как Django создает имена таблиц, комбинируя имя приложения и имя модели с подчеркиванием, я опираюсь на опцию #1.

мысли?

3 ответов


Они должны быть допустимыми именами пакетов. Это исключает 2 ("импорт my-django-app" будет синтаксической ошибкой). PEP 8 говорит:

модули должны иметь короткие имена в нижнем регистре. Можно использовать подчеркивания в имени модуля, если это улучшает читаемость. Пакеты Python должен также имеют короткие, все строчные имена, хотя использование подчеркиваний обескураженный.

Итак, 1 и 3 действительны, но 3 было бы рекомендовано подход.


имена каталогов приложений должны быть допустимым именем пакета Python. Это означает, что вариант 2 полностью недопустим в качестве имени пакета, хотя он все еще может использоваться для других целей, таких как документация. В конце концов, все сводится к личному стилю. Если вы предпочитаете вариант 3, используйте его.


мои голоса за 1 и 3, но вы можете увидеть несколько популярных приложений: http://www.django-cms.org/ http://geodjango.org/