Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.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模型变量字段_Python_Django - Fatal编程技术网

Python Django模型变量字段

Python Django模型变量字段,python,django,Python,Django,快速提问。我正在尝试使用变量访问模型的一个字段 class ExampleModel(models.Model): the_field = models.CharField() the_field_two = models.CharField() 如何动态访问该字段?我试过: model = ExampleModel.objects.get(pk=1) fieldtoget = 'the_field' test_var = model[fieldtoget] 但它似乎

快速提问。我正在尝试使用变量访问模型的一个字段

class ExampleModel(models.Model):
      the_field = models.CharField()
      the_field_two = models.CharField()
如何动态访问该字段?我试过:

model = ExampleModel.objects.get(pk=1)
fieldtoget = 'the_field'
test_var = model[fieldtoget]
但它似乎不起作用,你知道我该怎么做吗

更新:我想更新我的问题。我正在尝试编写一个函数(作为更大函数的一部分),它不仅可以获取字段的值,还可以从变量fieldname更新它。例如:

model[fieldtoget] = 'yo'
model.save()
在PHP中,您可以使用{}包装器-
$model{$fieldtoget}
-作为示例,因为动态变量名希望python中也有类似的东西:)


干杯

您可以使用pythons getattr函数来完成此操作。将字段名作为属性传入

getattr(model, fieldtoget)
由于fieldtoget是一个变量,因此它是动态的


您可以使用setattr以同样的方式进行设置。

谢谢您的回复,您能检查我更新的问题吗?干杯太棒了,这让我很开心!我使用setattr()并像个魔术师一样工作。谢谢你的帖子!嘿,如果我想得到嵌套的字段值,
field\uuuufieldtoget
你也可以使用模型的meta属性,该怎么做呢。使用单词model作为ExampleModel的实例变量可能不是一个好主意。这令人困惑。也许使用model_实例可能是更好的选择。