There is update_or_create
, eg::
obj, created = Person.objects.update_or_create(
first_name="John", last_name="Lennon",
defaults={'first_name': 'Bob'},
)
# If person exists with first_name="John" & last_name="Lennon" then update first_name="Bob"
# Else create new person with first_name="Bob" & last_name="Lennon"