在Django中合并两个模型实例
我想在Django中合并两个模型实例。 例如,我有:在Django中合并两个模型实例,django,django-models,django-orm,Django,Django Models,Django Orm,我想在Django中合并两个模型实例。 例如,我有: person1: id=1 created=(some date) name=None last_name=none person2: id=None created=None name=John last_name=Daw 结果应该是: result: id=1 created=(some date) name=John last_name=
person1:
id=1
created=(some date)
name=None
last_name=none
person2:
id=None
created=None
name=John
last_name=Daw
结果应该是:
result:
id=1
created=(some date)
name=John
last_name=Daw
现在我在dict属性中迭代,但也许有人知道更好的方法。
我寻找类似jQuery.extend函数的东西您是否尝试过这种方法,首先在
person2
中找出那些不为null的值:
person2_dict = {k: v for k, v in person2.__dict__.iteritems() if v is not None}
将他们合并到目标人员1
:
person1.__dict__.update(person2_dict)
person1.save()
两个第三方库可以帮助消除Django型号的重复数据: Django Extensions的管理命令
@MaxKharandziuk我认为
dict.update
接近$.extend
。我刚才提到了extend函数,例如:)