You cannot do this, as Timmy O'Mahoney said. But you can make B inline in A if you want. Or maybe you can manipulate how django displays it in
def unicode (self):
models.py
class A(models.Model): name = models.CharField(max_length=50) def __unicode__(self): return self.name class B(models.Model): name = models.CharField(max_length=50) a = models.ForeignKey(A)
admin.py
class B_Inline(admin.TabularInline): model = B class A_Admin(admin.ModelAdmin): inlines = [ B_Inline, ] admin.site.register(A, A_Admin) admin.site.register(B)
Or maybe you want to use many-to-many relationships?
models.py
class C(models.Model): name = models.CharField(max_length=50) def __unicode__(self): return self.name class D(models.Model): name = models.CharField(max_length=50) cs = models.ManyToManyField(C)
admin.py
class C_Inline(admin.TabularInline): model = D.cs.through class D_Admin(admin.ModelAdmin): exclude = ("cs",) inlines = [ C_Inline, ] admin.site.register(C) admin.site.register(D, D_Admin)
source share