У меня есть модель:Создание новой модели экземпляров из существующих
class MyModel(models.Model):
fieldA = models.IntegerField()
fieldB = models.IntegerField()
fieldC = models.IntegerField()
Теперь, давайте получить QuerySet, например,
qs = MyModel.objects.all()
Я хотел бы быть в состоянии изменить fieldB
и fieldC
всех экземпляров в qs
с тем же значением и сохранять их как новые записи в моей базе данных. Мне нужно что-то похожее на qs.update(fieldB=2, fieldC=3)
, но я не хочу переопределять исходные записи в qs
. Есть ли способ Django сделать это (то есть, что-то не связано с закодированным вручную циклом for
)?
Не уверен, как я отмечаю дубликат (новичок на этом сайте), но ваш ответ здесь: http://stackoverflow.com/questions/4733609/how-do-i-clone-a-django-model-instance- object-and-save-it-to-the-database – michaelb
Спасибо, но это относится к одному экземпляру, есть ли способ сделать это для всех экземпляров? (опять-таки, что-то иное, чем обычный цикл 'for', возможно, что-то, что вставляет все записи с одним запросом). – Sirion