Как я могу сохранить свой объект в другой таблице? - PullRequest
0 голосов
/ 01 июля 2019

У меня есть этот код:

entryA = myTable1.objects.all().first()
entryB = copy.deepcopy(entryA)

Но проблема в том, что я хотел бы сохранить entryB, но если я сделаю entryB.save(), у меня будет новая запись в myTable1, тогда как я хочуесть новая запись в myTable2, которая содержит те же поля.

Не могли бы вы помочь мне, пожалуйста?

Спасибо

Вот моя модель:

class myTable1(models.Model):
    number = models.BooleanField(default=True)
    date = models.DateField(default=None)

class myTable2(models.Model):
    number = models.BooleanField(default=True)
    date = models.DateField(default=None)

1 Ответ

1 голос
/ 01 июля 2019

Вам нужно будет скопировать свойства одного объекта в другой, а затем использовать метод create для создания нового экземпляра.

class myTable1(models.Model):
    number = models.BooleanField(default=True)
    date = models.DateField(default=None)

class myTable2(models.Model):
    number = models.BooleanField(default=True)
    date = models.DateField(default=None)

entryA = myTable1.objects.all().first()
entryB = myTable2.objects.create(number=entryA.number, date=entryA.date)

Или, если вы хотите, чтобы myTable2 имел уникальные данные, вы можете сделать:

 entryA = myTable1.objects.all().first()
 entryB, created = myTable2.objects.get_or_create(number=entryA.number, date=entryA.date)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...