Как создать отношения между первичным и внешним ключом в моделях Django и POST значения в БД

У меня есть приложение Django, которое в основном представляет собой интернет-магазин. Сейчас у меня есть две модели: User_details и Extend_user_deatils.

В User_details у меня есть (Username, Firstname, lastname, email, etc.). Теперь мне нужно расширить модель User_details другими полями, поэтому я создал другую модель Extend_user_deatils, состоящую из колонок (Mobile , Age).

Теперь мне нужно связать эти две модели, для этого я написал логику со ссылкой на внешний ключ

class User_details(models.Model):                                                     #Table 1
    id = models.AutoField(primary_key=True, db_column='user_id')
    username = models.CharField(max_length=50)
    first_name = models.CharField(max_length=50, blank=True, null=True)
    last_name = models.CharField(max_length=50, blank=True, null=True)
    email = models.CharField(max_length=50)


class Extend_user_details(models.Model):                                              #Table 2
    user =models.ForeignKey(User_details, on_delete=models.CASCADE,db_column='user_id')
    mobile = models.BigIntegerField(blank=True, null=True)
    age = models.IntegerField(blank=True, null=True)

Когда я открываю страницу администратора Django и размещаю данные, все работает нормально и значения размещаются в БД.

Когда я регистрируюсь как пользователь на странице регистрации. ForeignKey Column(user) из Table2 показывает Null .Кроме того, все вводимые данные публикуются в DB как показано Screenshot

Есть ли способ решить эту проблему

Заранее спасибо

Иногда при создании foreignKey Django создает отдельную таблицу в DB для хранения значений foreignkey, особенно когда вы используете shell для выполнения запросов

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