Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django按通用用户名获取用户\u字段_Python_Django_Django Models - Fatal编程技术网

Python Django按通用用户名获取用户\u字段

Python Django按通用用户名获取用户\u字段,python,django,django-models,Python,Django,Django Models,有没有一种好方法可以让Django用户模型中的用户改为使用通用的USERNAME\u字段进行查询 换句话说,不是: User.objects.get(username='my_User')或User.objects.get(email='User')test@user.com) 我想做一些类似的事情: User.objects.get(User.USERNAME\u字段=a\u USERNAME\u变量) 显然,后者抛出了一个语法错误,但我想问的是,是否有一种方法可以基于默认身份验证后端使用的用

有没有一种好方法可以让Django用户模型中的用户改为使用通用的
USERNAME\u字段进行查询

换句话说,不是:

User.objects.get(username='my_User')
User.objects.get(email='User')test@user.com)

我想做一些类似的事情:

User.objects.get(User.USERNAME\u字段=a\u USERNAME\u变量)

显然,后者抛出了一个
语法错误
,但我想问的是,是否有一种方法可以基于默认身份验证后端使用的
用户名\u字段进行查询:

user = User._default_manager.get_by_natural_key(username_variable)
这基本上是:

user = User.objects.get(**{User.USERNAME_FIELD: username_variable})

我不明白,你的意思是你有一个表单有一个输入字段,你想返回用户他的名字是输入的值吗?我想写一个通用的Django库,它通过基于
用户名\u字段
的查询来查找一个用户(来自Django AbstractBaseUser模型)。我不想硬编码
用户名
电子邮件
等。我希望尽可能使其通用,以便它可以与不同型号和不同的
用户名_字段
一起工作。太棒了!这就是我要找的。谢谢