Сравните новые и старые значения полей в django, затем обновите старое значение - PullRequest
0 голосов
/ 05 апреля 2020

В данных извлекается из URL. Который хранится в базе данных. Теперь я хотел бы только обновить данные, которые изменяются.

hostandservicelisturl = 'http://192.168.232.133/query=servicelist'
userpwd = ('xxx', 'xxx')
data7 = requests.get(hostandservicelisturl,auth = userpwd).json()
data8 = data7['data']['servicelist']

mylistik1 = []
for ik1 in data8:
    print(ik1)
    mylistik1.append(ik1)
    for x in mylistik1:
       for y in data8[x]:
            print(y)
            z = data8[x][y]
            Data.objects.update_or_create(hostname=ik1,service=y,servicestatus=z)

class Data(models.Model):
    hostname = models.CharField(max_length=200, null=True, editable=False)
    service = models.CharField(max_length=200, null=True, editable=False)
    servicestatus = models.IntegerField(null=True, editable=False)

Value In URL:
            "linksys-srw224p": {
                "PING": 2,
                "Port 1 Bandwidth Usage": 8,
                "Port 1 Link Status": 16,
                "Uptime": 16


Note : the number like 2 8 16 changes accordingly from the api pull.

На данный момент я видел полевой трекер () с предварительным сохранением, но я не могу понять, насколько документация тоже не ясно.

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