Merge two model instance in Django

django, django-models, django-orm

Solution

Have you tried this way, first find out those values not null in `person2`:

person2_dict = {k: v for k, v in person2.__dict__.iteritems() if v is not None}

Merge them into the target `person1`:

person1.__dict__.update(person2_dict)
person1.save()

Problem

I want to merge two model instance in Django. For example I have: ``` person1: id=1 created=(some date) name=None last_name=none person2: id=None created=None name=John last_name=Daw ``` and result should be: ``` result: id=1 created=(some date) name=John last_name=Daw ``` Now I do it iterating in __dict__ property, but maybe somebody knows better way. I look for something like jQuery.extend function

Original source