2017-02-11 17 views
2

Мне интересно, является ли создание приложения для учетных записей в Django хорошей практикой.Создает приложение для учетных записей в Django - хорошая практика?

Скажите, что у вас проект Django с именем mysite, и вы создаете внутри двух приложений: core, который содержит некоторую бизнес-логику и accounts.

MySite/счета/urls.py

urlpatterns = [ 
    url('^', include('django.contrib.auth.urls')), 
] 

MySite/MySite/urls.py

urlpatterns = [ 
    url(r'^accounts/', include('accounts.urls')), 
    url(r'^core/', include('core.urls')), 
] 

MySite/счета/шаблоны/регистрация/login.html

{% extends "base.html" %} 

{% block content %} 
{# Content of login page #} 
{% endblock %} 

MySite/ядро ​​/ шаблоны/base.html

<!DOCTYPE html> 
<html> 
<body> 
    {% block content %}{% endblock %} 
</body> 
</html> 

И создать все другие необходимые шаблоны для представлений в django.contrib.auth.urls.

Конечно, мы не забываем подключить два приложения:

MySite/MySite/settings.py

INSTALLED_APPS = [ 
    'accounts.apps.AccountsConfig', 
    'core.apps.CoreConfig', 
    # ... 
] 

это все из этой хорошей практики, или я должен интегрировать целые счета и управление аутентификацией в приложении core?

ответ

0

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

Однако я не стал бы вводить какую-либо бизнес-логику в основное приложение. Основное приложение обычно содержит некоторые общие утилиты, миксины, шаблоны, абстрактные модели, которые используются в нескольких других приложениях. Конкретная бизнес-логика должна быть реализована в отдельных приложениях.

Если вы можете взять на себя ответственность за https://www.twoscoopspress.com/products/two-scoops-of-django-1-8, он описывает этот тип настройки более подробно.