Python Django with cassandra后端-更新\u last\u登录方法错误
我正在尝试使用卡桑德拉作为我的数据库。我将auth_user表移动到cassandra。我创建了一个自定义后端类,并将自己的实现写入以下方法:Python Django with cassandra后端-更新\u last\u登录方法错误,python,django,django-authentication,Python,Django,Django Authentication,我正在尝试使用卡桑德拉作为我的数据库。我将auth_user表移动到cassandra。我创建了一个自定义后端类,并将自己的实现写入以下方法: def authenticate(...) def get_group_permissions() def has_perm() django文档中定义的方法很少 现在我可以添加新的用户和身份验证,但django尝试更新last login datetime字段。现在它抛出错误,因为sql数据库中并没有记录 如果我在django/admin/auth/
def authenticate(...)
def get_group_permissions()
def has_perm()
django文档中定义的方法很少
现在我可以添加新的用户和身份验证,但django尝试更新last login datetime字段。现在它抛出错误,因为sql数据库中并没有记录
如果我在django/admin/auth/models.py文件(第31行)中注释掉以下行
一切正常
我需要知道一个简单的方法来覆盖这个更新\u last\u login->user.save方法。
我使用django 1.5.2版本
谢谢
更新:
我通过在自定义后端类中断开信号连接获得了解决方案,如下所示:
from django.contrib.auth.models import update_last_login
from django.contrib.auth.signals import user_logged_in
...
user_logged_in.disconnect(update_last_login)
更新后的解决方案非常有效。这修复了/accounts/login/处的以下ValueError:
以下字段在此模型中不存在或是m2m字段:last_login
不确定这是否与较新版本的django或什么相关,但在我的情况下,用户已登录。断开连接(更新上次登录)不起作用。这对我来说是有效的:用户\u登录\u。断开连接(更新\u上次登录,调度\u uid='update\u上次登录')
from django.contrib.auth.models import update_last_login
from django.contrib.auth.signals import user_logged_in
...
user_logged_in.disconnect(update_last_login)