Source code for nested_admin.tests.identical_prefixes.admin

from django.contrib import admin
from django import forms
import nested_admin

from .models import Root, A, AX, AY, B, BX, BY


[docs]class BXModelForm(forms.ModelForm):
[docs] class Meta: model = BX exclude = ['b_type']
[docs]class BYModelForm(forms.ModelForm):
[docs] class Meta: model = BY exclude = ['b_type']
[docs]class BInline(nested_admin.NestedStackedInline): model = B extra = 0 sortable_field_name = "position" inline_classes = ("collapse", "open", )
[docs] def get_queryset(self, request): qset = super(BInline, self).get_queryset(request) return qset.filter(b_type=self.model.default_b_type)
[docs]class BXInline(BInline): model = BX form = BXModelForm
[docs]class BYInline(BInline): model = BY form = BYModelForm extra = 0
[docs]class AXModelForm(forms.ModelForm):
[docs] class Meta: model = AX exclude = ['a_type']
[docs]class AYModelForm(forms.ModelForm):
[docs] class Meta: model = AY exclude = ['a_type']
[docs]class AInline(nested_admin.NestedStackedInline): model = A extra = 0 inlines = [BXInline, BYInline] sortable_field_name = "position" inline_classes = ("collapse", "open", )
[docs] def get_queryset(self, request): qset = super(AInline, self).get_queryset(request) return qset.filter(a_type=self.model.default_a_type)
[docs]class AXInline(AInline): model = AX form = AXModelForm
[docs]class AYInline(AInline): model = AY form = AYModelForm extra = 0
[docs]@admin.register(Root) class RootAdmin(nested_admin.NestedModelAdmin): inlines = [AXInline, AYInline]