Заполнение моей базы данных по ходу дела данными из API - Django Prject

Я хотел бы заполнять свою базу данных по мере продвижения данными из API, который я использую и который отправляет мне данные пользователей.

Здесь, когда пользователь уже существует и мы просто изменяем его информацию на уровне API, то я хотел бы просто применить изменение информации, чтобы не дублировать пользователя, а если он не существует в моей базе данных, то я создам его. Но каждый раз, когда я вызываю API, если пользователь уже существовал в моей базе данных, он создает его снова (дубликат), и я не хочу, чтобы эта сторона

Обратите внимание, что я получаю данные пользователя в виде словаря

Пожалуйста, где проблема

views.py

from .models import Utilisateur

url='http://userAPI/Users/GetUsers'
y=requests.get(url)
users=y.json()
all_users=users['user']
for one_user in all_users:
   user=Utilisateur(name=one_user['name'],adresse=one_user['adresse'],code=one_user['code'])
   user.save()

models.py

from django.db import models

class Utilisateur(models.Model):
  name=models.CharField(max_length=100)
  adresse=models.CharField(max_length=255,blank=True,null=True)
  code=models.CharField(max_length=10)

Вы используете уникальное поле, например name, и используете его в вызове get_or_create:

for one_user in all_users:
    user = Utilisateur.objects.get_or_create(name=one_user['name'])
    user.adresse=one_user['adresse']
    user.code=one_user['code']
    user.save()
Вернуться на верх