我正在尝试找到一种同时添加/编辑两个模型的方法。即:
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]
这使我能够在添加规范时添加服务器。但实际上我想在添加新服务器时添加规范。因此,当我添加新的服务器或桌面时,我想添加规范。 Server 和 Desktop 中的规范字段应链接到填写的规范。
最佳答案
在你的管理员中试试这个:
class DesktopInline(admin.StackedInline):
model = Desktop
extra = 1
class SpecsAdmin(admin.ModelAdmin):
inlines = [DesktopInline,]
admin.site.register(Specs, SpecsAdmin)
看看the docs
关于python - Django Admin 一次编辑多个模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19516856/