May*_*thi 4 authentication django django-models django-users python-3.x
我正在寻找一种在使用 queryset 设置变量值后获取变量所有属性的方法。
例如...请参阅下面的代码...使用 user.id 或 user.first_name 我可以获得该属性的值。但是,如果我想检查它具有的所有其他属性?有什么办法可以得到。
如果我们使用user那么它只会返回 这就是我们在 admin.py 中定义的内容。
from django.contrib.auth.models import User
user=User.objects.get(id=1)
user.first_name # Will return some value say testUser
user.id # will return some value say 1
Run Code Online (Sandbox Code Playgroud)
小智 6
如果需要,Django 会返回与模型关联的字段元组。姜戈3.0:
from django.contrib.auth.models import User
User._meta.get_fields()
Run Code Online (Sandbox Code Playgroud)
添加@MarkL的答案:您可以漂亮地打印它以获得更好的可读性。
from django.contrib.auth.models import User
from pprint import pprint # new
user=User.objects.get(id=1)
pprint(user.__dict__) # new ----> pprint() instead of print()
Run Code Online (Sandbox Code Playgroud)
我总是更喜欢使用的另一种方法__dict__是vars()方法:
user=User.objects.get(id=1)
pprint(vars(user))
Run Code Online (Sandbox Code Playgroud)
两者都返回相同的结果,但对我来说vars()比 dunder dict 方法更方便编写__dict__,因为我懒得写 4 个下划线。
我猜你说的是你想打印一个对象的所有属性而不是QuerySet
要打印对象的所有属性,您可以执行以下操作:
from django.contrib.auth.models import User
user=User.objects.get(id=1)
print(user.__dict__)
Run Code Online (Sandbox Code Playgroud)
但是,如果您只是想了解 django 默认用户模型字段是什么,您可以查看此文档:https : //docs.djangoproject.com/en/3.0/ref/contrib/auth/
| 归档时间: |
|
| 查看次数: |
3625 次 |
| 最近记录: |