如何在Django模型中创建主键和外键之间的关系,并将值POST到DB中



我有一个Django应用程序,它基本上是一个在线购物。现在我有两个型号:User_detailsExtend_user_details

在User_details中,我有(用户名、名字、姓氏、电子邮件等(。之后,我需要用其他字段扩展User_details模型,因此我创建了另一个由(Mobile、Age(列组成的Extende_User_deatils模型。

现在我需要将这两个模型链接起来,为此我已经用外键引用编写了一个逻辑:

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管理页面并发布数据时,它运行良好,值正在发布到DB中。

当我从注册页面注册为用户时。表2中的ForeignKey列(用户(显示为Null。除此之外,所有输入都如屏幕截图所示过账到DB中

有什么办法解决这个问题吗?

有时当您创建foreignKey时,Django会在DB中制作一个单独的表来存储foreignKey值,尤其是当您使用shell进行查询时

最新更新