models -- 一对一关系

  • class Author(models.Model):
        name = models.CharField(max_length=30)
    
        def __str__(self):
            return self.name
    
    class AuthorDetail(models.Model):
        sex = models.BooleanField(max_length=1, choices=((0, '男'), (1, '女'),))
        email = models.EmailField()
        address = models.CharField(max_length=50)
        birthday = models.DateField()
        author = models.OneToOneField(Author)
    
  • class Author(models.Model):
        name = models.CharField(max_length=30)
    
        def __str__(self):
            return self.name
    
    class AuthorDetail(models.Model):
        sex = models.BooleanField(max_length=1, choices=((0, '男'), (1, '女'),))
        email = models.EmailField()
        address = models.CharField(max_length=50)
        birthday = models.DateField()
        author = models.ForeignKey('Author', unique=True)
    
  • 建立一对一关系的两种实现方式,一种是使用OneToOneField,一种是ForeignKey与unique=True组合
原文地址:https://www.cnblogs.com/dongmengze/p/9713976.html