class TestModelProxy(Test):
class Meta:
proxy = True
verbose_name = "테스트모델 프록시"
verbose_name_plural = "테스트모델 프록시"
@admin.register(TestModelProxy)
class TestModelProxyAdmin(admin.ModelAdmin):
show_full_result_count = False
...중략...
def get_model_perms(self, request):
return {}
@admin.register(SomeModel)
class SomeModelAdmin(admin.ModelAdmin):
show_full_result_count = False
model = SomeModel
inlines = [
TestModelApplyInline,
]
def get_inline_formsets(self, request, formsets, inline_instances, obj=None):
from django.contrib.admin import helpers
inline_admin_formsets = []
for inline, formset in zip(inline_instances, formsets):
fieldsets = list(inline.get_fieldsets(request, obj))
readonly = list(inline.get_readonly_fields(request, obj))
prepopulated = dict(inline.get_prepopulated_fields(request, obj))
inline_admin_formset = helpers.InlineAdminFormSet(
inline, formset, fieldsets, prepopulated, readonly,
model_admin=self,
)
if isinstance(inline, TestModelApplyInline):
for form in inline_admin_formset.forms:
form.instance.fk_name._meta.model_name = TestModelProxy._meta.model_name
inline_admin_formsets.append(inline_admin_formset)
return inline_admin_formsets