在Django中,ForeignKey是一個模型字段(model field),用于定義與其他模型的關系。使用ForeignKey可以在一個模型中引用另一個模型的主鍵。
以下是使用ForeignKey的步驟:
from django.db import models
class Author(models.Model):
name = models.CharField(max_length=100)
class Book(models.Model):
title = models.CharField(max_length=100)
author = models.ForeignKey(Author, on_delete=models.CASCADE)
在定義ForeignKey字段時,還可以指定其他參數,以定制關聯行為。例如,在上面的示例中,on_delete參數指定了當關聯的Author實例被刪除時,與其相關的Book實例的行為。
在進行數據庫遷移(migrate)之后,可以通過在代碼中引用ForeignKey字段來訪問關聯的實例。例如,可以通過book.author
訪問Book模型中的Author實例。
還可以通過在定義ForeignKey字段時指定related_name參數來設置反向關系。這樣可以在關聯的模型中通過該名稱訪問與之關聯的模型。例如,在上面的示例中,可以通過author.book_set.all()
訪問與Author模型關聯的Book實例。
以上是使用ForeignKey的基本步驟,詳細的使用方法和參數可以參考Django官方文檔。