在Django中创建一个帐户应用程序是一个好习惯吗?

时间:2017-02-11 23:04:41

标签: python django django-authentication

我想知道在Django中创建帐户应用程序是否是一种很好的做法。

假设您有一个名为mysite的Django项目,并且您在两个应用内创建: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应用中集成整个帐户和身份验证管理?

1 个答案:

答案 0 :(得分:1)

这很大程度上取决于您的个人偏好,但我认为该帐户绝对值得单独使用。

但是,我不会将任何业务逻辑放入核心应用程序中。核心应用程序通常包含一些共享的工具,mixins,模板,抽象模型,这些模型在多个其他应用程序中使用。具体的业务逻辑应该在单独的应用程序中实现。

如果你能够开始https://www.twoscoopspress.com/products/two-scoops-of-django-1-8,它会更详细地描述这种设置。