django - Django 查询创建 - 字段由字符串确定
问题描述
我正在尝试使用带有字符串的 django 创建一个对象:
我的模型:
class Example(models.Model):
user_id = models.IntegerField(blank=True, null=True)
field_1 = models.DecimalField(max_digits=15, decimal_places=2, blank=True, null=True)
field_2 = models.DecimalField(max_digits=15, decimal_places=2, blank=True, null=True)
field_3 = models.DecimalField(max_digits=15, decimal_places=2, blank=True, null=True)
创建代码:
real_field = "field_"+str(level)
example = Example(
user_id=user_id,
real_field=value_1,
......
)
example.save()
如何创建这个..请谢谢..!!
解决方案
real_field = "field_"+str(level)
example = Example(
user_id=user_id,
......
)
example.setattr(real_field,value_1)
example.save()
setattr 是你要找的,
或者
data = {}
data["field_"+str(level)] = value1
example = Example(
user_id=user_id,
......,
**data
)
example.save()
推荐阅读
- visual-studio-code - 如何使explicitArray 在vs 代码中处理xml2js?
- sql-server - 将布尔值迁移到 AWS 中的 SQL Server
- android - 按月和年划分的 Android 房间组
- laravel - 无法使用 Nginx (Windows) 访问 laravel 端点
- c# - DropDownList 未显示在服务器端
- .net - 与 nillable 属性相关的 XML 序列化变化
- react-native - 显示睡眠功能图的 UI
- react-native - 什么是多维数组
- c++ - 头文件中的自动说明符
- c - 从 file.cfg 读取时出现 Segmentation_Fault 错误