Как автоматически заполнить ModelForm данными из базы данных - PullRequest
0 голосов
/ 01 октября 2018

У меня есть эта Модель с полями X, Y и Z в качестве полей unique_together, выступающих в качестве первичного ключа.Созданный объект затем будет хранить свои данные в sqlite3.Теперь мне нужно, чтобы, если нужно создать другой объект с такими же значениями, а не создавать новый объект, пользователь может щелкнуть дублирующую кнопку в представлении списка изменений, которая приведет его к форме добавления модели с XY, как предварительно.заполнено из базы данных и только поле Y открыто для изменения.

Как мне поступить?

В admin.py

    def Duplicate(self,obj):
       new_Client=Client()
       new_Client.Team_Member=obj.Team_Member
       new_Client.Client_name=obj.Client_name
       href1='add/'
        return format_html(('''<a class="btn btn-primary" href={}>Duplicate</a>''').format(href1))

В models.py

class Client(models.Model):
    Team_Member = models.CharField(max_length=120, default='')
    Client_name=models.CharField(max_length=120)
    Client_id=models.CharField(max_length=120)
    Updated_at=models.DateTimeField(default=datetime.datetime.now)
    Created_at=models.DateTimeField(default=datetime.datetime.now)
    Description = models.CharField(max_length=200)
    data=models.TextField(max_length=15000,default={},blank=True)
    year=models.CharField(max_length=20,default='')
    class Meta(object):
        unique_together =(
        ("Team_Member","Client_name","year",),
        )

При выборе дубликата только годдолжен отображаться как редактируемый остаток, заполняемый автоматически.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...