Как я могу быстро удалить записи, которые не должны существовать в базе данных?
Импортирует записи из старой базы данных. Я загружаю определенный объект по имени, и это объекты, взятые из старой базы данных.
Теперь я проверяю, существует ли такой объект в новой базе данных.
В старой базе, например, 20 таких объектов, а в новой - 25. Как я могу автоматически удалить эти 5 объектов из новой базы? Я пробовал кое-что сделать, используя, например,
obj = Model.objects.all()
kr = Model.objects.filter(name=name).first()
obj_list = []
for op in obj:
if op in obj_list:
continue
else:
obj_list.append(op)
spec_list = []
for item in obj_list:
if kr == item:
continue
else:
spec_list.append(item)
Если у вас есть объект, просто удалите его с помощью:
item.delete()
Если вы можете сравнивать объекты один с другим, это должно быть так же просто.
old_objects # list with objects from old db
new_objects = Model.objects.all()
for my_object in new_objects:
if my_object not in old_objects:
my_object.delete()