在这里需要认真的帮助。
我有一个用django / python编写的应用程序,我必须对其进行扩展,并在此应用程序中包含一些其他解决方案作为“应用程序”。例如,我要集成的应用程序名为“ my_new_app”。现在为主应用程序编写了一个后端身份验证,我无法使用它。我有一个要查询的mysql数据库,主要应用程序主要使用cassendra和redis。所以我的问题是,有什么办法可以为新应用“ my_new_app”使用单独的身份验证后端,并在同一个域中运行两者?问题可能不是那么清楚,如果有问题我会澄清。
你可以有多个身份验证后端。只需AUTHENTICATION_BACKENDS在settings.pyDjango项目中设置in 即可列出你要使用的后端实现。例如,我经常结合使用OpenID身份验证和标准Django身份验证,例如settings.py:
AUTHENTICATION_BACKENDS
settings.pyDjango
settings.py
AUTHENTICATION_BACKENDS = ( 'django.contrib.auth.backends.ModelBackend', 'django_openid_auth.auth.OpenIDBackend', )
在此示例中,Django首先将尝试使用进行身份验证django.contrib.auth.backends.ModelBackend,这是Django的默认后端。如果失败,则继续进行到下一个后端django_openid_auth.auth.OpenIDBackend。
django.contrib.auth.backends.ModelBackend
django_openid_auth.auth.OpenIDBackend
请注意,你的自定义后端必须位于Django可见的路径中。在此示例中,我必须添加django_openid_auth到INSTALLED_APPS,否则Django将无法导入它并将其用作后端。