Does foreign key have to be primary key in Django?

Viewed 18

Can we use any other unique column as foreign key in django model?

1 Answers

Yes you can. Column must be unique=True.

To reference this column, specify to_fied attribute on source column. Check below;

class Group (models.Model):
    name= models.CharField(max_length=250)
    otherid=models.IntegerField(unique=True)

class Member (models.Model):
    name=models.CharField(max_length=250)
    group=models.ForeignKey(Group,models.CASCADE,to_field='otherid')
Related