一度に 2 つのモデルを追加/編集する方法を見つけようとしています。すなわち:
class Desktop(models.Model):
#some field...
specs = models.ForeignKey(Specs)
class Specs(models.Model):
cpu = models.CharField(max_length=200)
#and some other fields
新しいデスクトップを追加するときに、スペックも同時に追加できるようにしたいと考えています。通常の Django Admin では+
シンボルを取得し、ForeignKey の値を追加できます。ただし、デスクトップの編集中に外部キーを編集したい場合は、それを行うことはできません。
アップデート!以下を追加しました。
class ServerInLine(admin.StackedInLine):
model = Server
extra = 1
class SpecsManager(admin.ModelAdmin):
inlines = [ServerInLine]
これにより、スペックを追加するときにサーバーを追加できます。しかし、実際には、新しいサーバーを追加するときにスペックを追加したいと考えています。新しいサーバーまたはデスクトップを追加するときは、スペックを追加したいと考えています。サーバーとデスクトップの仕様フィールドは、入力された仕様にリンクする必要があります。