django object get/set field

前端 未结 4 639
孤城傲影
孤城傲影 2020-12-08 00:52

Can I get the value of an object field some other way than obj.field? Does something like obj.get(\'field\') exist? Same thing for setting the valu

4条回答
  •  鱼传尺愫
    2020-12-08 01:40

    To get the value of a field:

    getattr(obj, 'field_name')
    

    To set the value of a field:

    setattr(obj, 'field_name', 'field value')
    

    To get all the fields and values for a Django object:

    [(field.name, getattr(obj,field.name)) for field in obj._meta.fields]
    

    You can read the documentation of Model _meta API which is really useful.

提交回复
热议问题