asp*_*ing 3 django django-orm python-3.x
Django中是否有某种方法可以检索/显示属于通过Django创建的对象的所有属性的值?
在Python Shell中,我使用了以下命令:
>>> print(p.first_name, p.last_name, p.software_name)
Linus Torvalds Linux
Run Code Online (Sandbox Code Playgroud)
p是具有first_name,last_name,software_name属性的已创建对象。我已经创建了几个模型,这些模型已应用于mysql中的特定数据库。
我想学习其他显示此类信息的方法。
yhd*_*ung 26
Python内置的特殊属性object.__dict__可以检索对象的所有属性,作为字典。
p.__dict__
# returns {'first_name': 'Linus', 'last_name': 'Torvalds', 'software_name': 'Linux'}
Run Code Online (Sandbox Code Playgroud)
或者,使用 Python 内置函数vars(),它返回__dict__对象的 ,给出相同的结果。
vars(p)
Run Code Online (Sandbox Code Playgroud)
对于 QuerySet,您可以考虑显示 QuerySet 项之一的属性,例如:
q.first().__dict__
# or
vars(q.first())
Run Code Online (Sandbox Code Playgroud)
aru*_*ska 10
A bit late, but as none of the answers mentioned the easiest way to do that:
>>> # assuming your object was already saved in the database and p is the QuerySet
>>> # with your object
>>> p.values()
<QuerySet [{'first_name': 'Linus', 'last_name': 'Torvalds', 'software_name': 'Linux'}]>
Run Code Online (Sandbox Code Playgroud)
小智 -1
您可以使用 model_to_dict 函数。检查这个答案。
该模块将其打包为 mixin:django-model-to-dict
一旦您的对象采用字典形式,打印或任何处理都应该更容易。
| 归档时间: |
|
| 查看次数: |
3386 次 |
| 最近记录: |