5

我正在尝试找到一种同时添加/编辑两个模型的方法。IE :

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]

这使我能够在添加规格时添加服务器。但实际上我想在添加新服务器时添加规格。因此,当我添加新的服务器或桌面时,我想添加规格。然后,服务器和桌面中的规范字段应链接到填写的规范。

4

1 回答 1

5

在您的管理员中尝试此操作:

 class DesktopInline(admin.StackedInline):
    model = Desktop
    extra = 1


class SpecsAdmin(admin.ModelAdmin):
    inlines = [DesktopInline,]
admin.site.register(Specs, SpecsAdmin)

看看文档

于 2013-10-22T12:04:50.000 回答