Есть какие-либо проблемы с использованием "<namespace> .django. <App-name>" для приложений django? - PullRequest
0 голосов
/ 16 марта 2011

Я знаю, что приложения Django обычно называются django-appname, однако наши пакеты не-django выпускаются под пространством имен для нашей компании (например, company.modulename). Наши приложения Django в настоящее время структурированы в пространстве имен "django" в этом пространстве имен (например, company.django.appname).

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

  1. "django-company-appname" <- больше похоже на название сообщества </li>
  2. "company.django.appname" <- соответствует внутренней структуре и пакетам Python, отличным от django, которые мы выпускаем. </li>

Edit: Позвольте мне сделать это немного более ясным. Мы уже используем пространства имен - наши приложения django импортируются с использованием «company.django.appname». Мы пытаемся решить, будет ли имя, которое мы используем для выпуска этого приложения, как определено в setup.py и указано в PyPI / Github, «company.django.appname», как и другие наши выпуски Python, или если мы должны это сделать вместо этого "django-company-app".

Ответы [ 2 ]

0 голосов
/ 16 марта 2011

Принудительный абсолютный импорт устранит любую вероятность проблем из-за повторного использования имен пакетов.

0 голосов
/ 16 марта 2011

Мы используем пространство имен в стиле company.modulename для нескольких приложений django и не столкнулись с проблемами.

В файлах __init__.py мы объявляем пространство имен.

import pkg_resources

pkg_resources.declare_namespace(__name__)

, и этодо сих пор работал нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...