Существуют ли такие вещи, как драгоценные камни Django - плагины, такие как драгоценные камни Ruby - PullRequest
7 голосов
/ 05 января 2011

Существуют ли такие вещи, как драгоценные камни Django - плагины, такие как драгоценные камни Ruby,

как плагин управления аутентификацией и т. Д.

Ответы [ 3 ]

5 голосов
/ 06 января 2011

Чтобы добавить немного подробностей к другим ответам, эквивалентом драгоценных камней Ruby являются "яйца" Python.Я не знаю Ruby, поэтому я не уверен, насколько точна эта эквивалентность, но яйца в основном являются установочными файлами для пакетов Python - они дают Python информацию о том, какие пакеты установлены.Яйцо обычно создается путем запуска ./setup.py install из каталога пакета или с помощью setuptools, то есть pip install NAME-OF-PACKAGE (последний метод обычно проще, поскольку он загружает файлы для вас и устанавливает все необходимые зависимости).Следует отметить, что любой пакет (любая папка с файлом __init__.py в нем) или модуль, помещенный в PYTHONPATH, может быть импортирован Python;их установка просто помогает отслеживать, какие пакеты используются, и облегчает работу со сложными пакетами, которые имеют много зависимостей.

В Django, как упоминал @EinLama, эти дополнительные пакеты функционируют как приложения(они обычно включают файлы, такие как models.py, views.py, urls.py и т. д.).Некоторые из них фактически устанавливаются Python, как описано выше, а некоторые являются просто папками, которые должны быть помещены в вашу PYTHONPATH (в обоих случаях вам также необходимо добавить их в установленные приложения в файле settings.py, чтобы Django знал о них),Кроме того, я часто сталкиваюсь с пакетами (с открытым исходным кодом), которые делают почти то, что я хочу, но не совсем, или которые разработаны таким образом, что детали, которые необходимо изменить для интеграции приложения в мой проект, жестко запрограммированы.В этих случаях я часто помещаю приложение прямо в папку своего проекта, где я могу вносить изменения по мере необходимости и получать к нему доступ, как будто это любое из моих других приложений.В этом случае пакет, конечно, ограничен этим конкретным проектом Django - он никогда не устанавливается Python и не создается яйцо.

Надеюсь, что это немного прояснит ситуацию.

4 голосов
/ 05 января 2011

Это называется Apps в мире Django.

Некоторые из них вы можете найти здесь: https://www.djangopackages.com/

4 голосов
/ 05 января 2011

Есть яйца Python, которые очень похожи на Ruby Gems.Я уверен, что некоторые из них добавляют функциональность Django.И есть такие вещи, как Расширения Django

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