gpt4 book ai didi

python - 如何检查 Django 模型数据类型?

转载 作者:太空宇宙 更新时间:2023-11-03 12:48:32 26 4
gpt4 key购买 nike

我有一个包含 140 列的 Django 模型,其中包含 10 种日期类型、60 种字符类型、70 种数字类型。

class SOA_detail(models.Model):
...

有没有办法按数据类型分组并将列名放在列表中。

char_fields = [] # storage for character fields column name
num_fields = [] # storage for number fields column name
date_fields = [] # storage for date fields column name

到目前为止我知道的是取列名。

 # take all field names from model
for model_field in SOA_detail._meta._fields():
if #datatype is char: ---??
char_fields.append(model_field.name)
elif #datatype is num: ---??
num_fields.append(model_field.name)
elif #datatype is date: ---??
date_field.append(model_field.name)

感谢您花时间阅读我的问题。

最佳答案

在 python 中有一个名为 isinstance 的内置方法,它检查一个对象是否是特定类的实例,使用这个方法你可以这样做:

for model_field in SOA_detail._meta._fields():
if isinstance(model_field, CharField):
char_fields.append(model_field.name)
elif isinstance(model_field, IntegerField):
num_fields.append(model_field.name)
elif isinstance(model_filed, DateTimeField):
date_field.append(model_field.name)

关于python - 如何检查 Django 模型数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21085287/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com