Ограничение NOT NULL не удалось при попытке POST данных в Django API

У меня есть проект с двумя приложениями: приложение React для front-end и Django для backend.

Я создал свою страницу регистрации в React, а процесс регистрации в Django. Я хотел бы соединить эти два процесса, чтобы пользователь мог пройти через созданную мной страницу регистрации и чтобы пользователь был создан на основе информации, предоставленной пользователем.

Вот мой models.py

class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    name = models.CharField(max_length=100, blank=True)
    location = models.CharField(max_length=100, blank=True)
    password = models.CharField(max_length=32)
    email = models.EmailField(max_length=150)
    signup_confirmation = models.BooleanField(default=False)

    def __str__(self):
        return self.user.username

@receiver(post_save, sender=User)
def update_profile_signal(sender, instance, created, **kwargs):
    if created:
        Profile.objects.create(user=instance)
    instance.profile.save()

Serializers.py:

class ProfileSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = Profile
        fields = ('user_id', 'name', 'location', 'password', 'email', 'signup_confirmation')

и функция POST в React

const onSubmit = e => {
    e.preventDefault();

    const user = {
        email: email,
        name: name,
        location: 'Example',
        password: password,
        user_id: 1,
    };
    console.log(user);
    fetch('http://127.0.0.1:8000/api/v1/users/profiles/?format=api', {
        method: 'POST',
        headers: {
            'Content-Type':'application/json'
        },
        body: JSON.stringify(user)
    })
        .then(res => res.json())
        .then(data => {
            if (data.key) {
                localStorage.clear();
                localStorage.setItem('token',data.key);
                window.location.replace('http://localhost:3000/profile/');
            } else {
                setEmail('');
                setName('');
                setPassword('');
                localStorage.clear();
                setErrors(true);
            }
        });
};

Проблема в том, что когда я пытаюсь создать пользователя, я получаю это сообщение об ошибке в Django

django.db.utils.IntegrityError: NOT NULL constraint failed: accounts_profile.user_id

и когда я проверяю свой сетевой инспектор, я получаю сообщение Status code 500: Internal Server Error. При дальнейшей проверке (перейдя к предварительному просмотру) я вижу следующее

IntegrityError at /api/v1/users/profiles/
NOT NULL constraint failed: accounts_profile.user_id

Я также проверил, что я получу, если я буду вести консольный лог res.text внутри моего fetch() и вот что я получу:

<!DOCTYPE html>
<html>
  <head>
    

      
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <meta name="robots" content="NONE,NOARCHIVE" />
      

      <title>Profile List – Django REST framework</title>

...

Есть идеи, где я могу ошибиться?

Идентификатор пользователя '1', вероятно, уже выделен. Попробуйте следующее:

python manage.py shell
>>> from django.contrib.auth.models import User
>>> u = User.objects.all

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

Вернуться на верх