Рубрики
Без рубрики

Django Framework – популярные расширения, краткосрочный список

Бронсидент с популярными модулями Django и приложениями, которые могут помочь программистам кодировать более быстрые новые функции, повторное повторное использование работы с открытым исходным кодом. Tagged с Django, Python, Opensource.

Hello Coders,

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

Спасибо! Содержание, предоставленное Appseed – app generator Отказ

Список построен на основе моего личного опыта и предложений, опубликованных разработчиками в соответствующих общинах: Dev.to. Питонеры / Джанго , Reddit django. и Питон каналы, а классика Python Forum. .

Что такое Django (веб-каркас)

Quot-Note для начинающих – Django – это каркас веб-приложений с открытым исходным кодом, написанная в Python. Рамка означает коллекцию модулей и помощников, которые облегчают развитие. Они логически сгруппированы вместе и позволяют создавать веб-приложения, повторно используя вещи, а не писать все с нуля.

Полезные ресурсы Django:

Короткий список

  • Django расширения – Коллекция пользовательских расширений
  • Django Rest Framework – Гибкий инструментарий для строительства веб-API
  • DRF-YASG – Генератор Django Docs для Django
  • Django Debug Toolbar – Отображение различных отладки информации для текущего запроса
  • Django Cors заголовки – добавляет заголовки обмена ресурсами поперечного происхождения (CORS) в ответы
  • Django recaptcha v3 – интеграция Google recaptcha v3 в Джанго
  • Джанго-окружающая среда – позволяет настроить приложения Django с переменными среды с легкостью
  • Redis Cache – Полнофункциональный Cache Cache Redis для Django.
  • Хранилища Django – Коллекция пользовательских хранилищ для Django: Amazon S3, Azure, Digital Ocean, Dropbox.
  • Django Allauth – Интегрированный набор приложений Django, адресующих аутентификацию, регистрацию, управление учетными записями, а также аутентификацию с третьей стороной (социальной) учетной ответственностью.

Если вы хотите быстро проверить любое расширение, представленное здесь, обновлением некоторых проектов с открытым исходным кодом, вот короткий список с Бесплатные приложения Django

Расширения Django

Это открытая коллекция пользовательских расширений, используемых для проектов Django, выпущенных под лицензией MIT.

Как это использовать

$ pip install django-extensions

Включите расширения в конфигурации Django ( Settings.py ):

INSTALLED_APPS = (
    ...
    'django_extensions',
    ...
)

Теперь мы можем использовать магию через Manage.py Основной скрипт:

$ # Generate (and view) a graphviz graph of app models:
$ python manage.py graph_models -a -o myapp_models.png
$
$ # Check templates for rendering errors:
$ python manage.py validate_templates
$
$ # Run the enhanced django shell:
$ python manage.py shell_plus

Django Rest Framework

Django Rest Framework – это мощный и гибкий инструментарий для строительства веб-API с впечатляющим набором функций:

  • В Интернете API Boaderable является огромным удобным для использования для ваших разработчиков.
  • Политика аутентификации, включая пакеты для OAUTT1A и OAUTH2.
  • Сериализация, которая поддерживает как ORM, так и неработающие источники данных.

Django Rest Links :

Django Debug панель инструментов

Панель инструментов Django Debug – это настраиваемый набор панелей, которые отображают различные отладки информации о текущем запросе/ответа и при нажатии, отобразите подробную информацию о содержимом панели.

Django Cors заголовки

Приложение Django, которое добавляет заголовки ресурсов по перекрестным происхождениям (CORS) для ответов. Это позволяет просматривать браузер запросы на приложение Django от других происхождений.

Как это использовать

$ pip install django-cors-headers

Добавьте расширение в конфигурации Django:

INSTALLED_APPS = [
    ...
    'corsheaders',
    ...
]

Вам также нужно будет добавить класс промежуточного программного обеспечения для прослушивания в ответах:

MIDDLEWARE = [  # Or MIDDLEWARE_CLASSES on Django < 1.10
    ...
    'corsheaders.middleware.CorsMiddleware',
    'django.middleware.common.CommonMiddleware',
    ...
]

Django recaptcha v3.

Это интеграция приложение реализует поле recaptcha для Google recaptcha v3 Отказ

Как это использовать

$ pip install django-recaptcha3

Затем добавьте django-recaptcha3 на ваши установленные приложения:

INSTALLED_APPS = (
    ...
    'snowpenguin.django.recaptcha3',
    ...
)

Обновление settings.py С приватным и открытым ключом ReCAPTCHA:

RECAPTCHA_PRIVATE_KEY = 'Super_s3Cret_1234'
RECAPTCHA_PUBLIC_KEY  = 'Public key'

Использование в формах

from snowpenguin.django.recaptcha3.fields import ReCaptchaField

class ExampleForm(forms.Form):
    [...]
    captcha = ReCaptchaField()
    [...]

DRF-YASG

Генератор документации Swagger/Openapi для Django Rest Framework.

Как это использовать

$ pip install -U drf-yasg

Обновите settings.py Чтобы включить приложение:

INSTALLED_APPS = [
    ...
    'drf_yasg',
    ...
]

Обновление Urls.py. :

...
from rest_framework import permissions
from drf_yasg.views import get_schema_view
from drf_yasg import openapi

...

schema_view = get_schema_view(
   openapi.Info(
      title="Snippets API",
      default_version='v1',
      description="Test description",
      terms_of_service="https://www.google.com/policies/terms/",
      contact=openapi.Contact(email="contact@snippets.local"),
      license=openapi.License(name="BSD License"),
   ),
   public=True,
   permission_classes=(permissions.AllowAny,),
)

urlpatterns = [
   url(r'^swagger(?P\.json|\.yaml)$', schema_view.without_ui(cache_timeout=0), name='schema-json'),
   url(r'^swagger/$', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'),
   url(r'^redoc/$', schema_view.with_ui('redoc', cache_timeout=0), name='schema-redoc'),
   ...
]

Эти простые настройки будут выставлять 4 конечных точка:

  • JSON View о вашей спецификации API в/swarger.json
  • Вид в YAML вашей спецификации API в/swarger.yaml
  • Взгляд Swagger-ui о вашей спецификации API в/Swagger/
  • Redoc Вид вашей спецификации API в/Redoc/

Джанго-экологии

Django-Engrain позволяет использовать Двенадцать факторов Методология Чтобы настроить приложение Django с переменными среды.

Как это использовать

$ pip install django-environ

Создать .env Файл в корне вашего проекта Django (образец ниже):

DEBUG=on
SECRET_KEY=your-secret-key
DATABASE_URL=psql://urser:un-githubbedpassword@127.0.0.1:8458/database
SQLITE_URL=sqlite:///my-local-sqlite.db

Использование в приложении Django (Нет необходимости добавлять его на установленные_apps)

import environ
env = environ.Env(
    # set casting, default value
    DEBUG=(bool, False)
)
# reading .env file
environ.Env.read_env()

# False if not in os.environ
DEBUG = env('DEBUG')

# Raises django's ImproperlyConfigured exception if SECRET_KEY not in os.environ
SECRET_KEY = env('SECRET_KEY')

# Parse database connection url strings like psql://user:pass@127.0.0.1:8458/db
DATABASES = {
    # read os.environ['DATABASE_URL'] and raises ImproperlyConfigured exception if not found
    'default': env.db(),
    # read os.environ['SQLITE_URL']
    'extra': env.db('SQLITE_URL', default='sqlite:////tmp/my-tmp-sqlite.db')
}

Спасибо!

Оригинал: “https://dev.to/sm0ke/django-framework-popular-extensions-a-short-list-130”