1. ホーム
  2. python

[解決済み】Djangoの自己参照型外部キー

2022-04-22 23:18:28

質問

私はウェブアプリとデータベース全般の初心者なので、馬鹿な質問かもしれませんが、よろしくお願いします。私はモデル("CategoryModel")を作り、そのモデルの別のインスタンス(その親)の主IDを指すフィールドを持ちたいと考えています。

class CategoryModel(models.Model):
    parent = models.ForeignKey(CategoryModel)

どうすればいいのでしょうか?ありがとうございます。

どのように解決するのですか?

ForeignKeyにモデル名を文字列で渡せば、正しい動作をしてくれます。

だから

parent = models.ForeignKey("CategoryModel")

または、文字列 "self"を使用することもできます。

parent = models.ForeignKey("self")