В моей разработке я попал в ситуацию, когда мне нужно сохранить объект модели со всеми выбранными, связанными объектами.Звучит странно, но полезно, когда вы не знаете, какие операции выполнялись с объектом модели.Пример:
class User(models.Model):
name = models.CharField(max_length=50)
class Room(models.Model):
user = models.OneToOneField(User)
size_x = models.SmallIntegerField()
size_y = models.SmallIntegerField()
def do_some_stuff(room):
room.user.name = "some new name"
room = Room.objects.get(id="some_id")
do_some_stuff(room) # we didn't know which related_fields would be loaded and modified here
room.save() # <- here I want to save the room object and the user (if the user object was fetched or modified from db)
Может быть, есть какой-нибудь способ, как я могу рекурсивно получить все связанные объекты, которые были загружены?
Спасибо.