# {py:mod}`django_twc_toolbox.admin` ```{py:module} django_twc_toolbox.admin ``` ```{autodoc2-docstring} django_twc_toolbox.admin :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ReadOnlyModelAdmin ` - ```{autodoc2-docstring} django_twc_toolbox.admin.ReadOnlyModelAdmin :summary: ``` * - {py:obj}`ReadOnlyStackedInline ` - ```{autodoc2-docstring} django_twc_toolbox.admin.ReadOnlyStackedInline :summary: ``` * - {py:obj}`ReadOnlyTabularInline ` - ```{autodoc2-docstring} django_twc_toolbox.admin.ReadOnlyTabularInline :summary: ``` ```` ### API `````{py:class} ReadOnlyModelAdmin :canonical: django_twc_toolbox.admin.ReadOnlyModelAdmin Bases: {py:obj}`typing.Generic`\[{py:obj}`django_twc_toolbox._typing.ChildModelT`\, {py:obj}`django_twc_toolbox._typing.ParentModelT`\], {py:obj}`django.contrib.admin.options.BaseModelAdmin`\[{py:obj}`django_twc_toolbox._typing.ChildModelT`\] ```{autodoc2-docstring} django_twc_toolbox.admin.ReadOnlyModelAdmin ``` ````{py:attribute} can_delete :canonical: django_twc_toolbox.admin.ReadOnlyModelAdmin.can_delete :value: > False ```{autodoc2-docstring} django_twc_toolbox.admin.ReadOnlyModelAdmin.can_delete ``` ```` ````{py:attribute} extra :canonical: django_twc_toolbox.admin.ReadOnlyModelAdmin.extra :value: > 0 ```{autodoc2-docstring} django_twc_toolbox.admin.ReadOnlyModelAdmin.extra ``` ```` ````{py:method} get_readonly_fields(request: django.http.HttpRequest, obj: django_twc_toolbox._typing.ChildModelT | None = None) -> django_twc_toolbox._typing.ListOrTuple[str] :canonical: django_twc_toolbox.admin.ReadOnlyModelAdmin.get_readonly_fields ```{autodoc2-docstring} django_twc_toolbox.admin.ReadOnlyModelAdmin.get_readonly_fields ``` ```` ````{py:method} has_add_permission(request: django.http.HttpRequest, obj: django_twc_toolbox._typing.ParentModelT | None) -> bool :canonical: django_twc_toolbox.admin.ReadOnlyModelAdmin.has_add_permission ```{autodoc2-docstring} django_twc_toolbox.admin.ReadOnlyModelAdmin.has_add_permission ``` ```` ````{py:method} has_change_permission(request: django.http.HttpRequest, obj: django_twc_toolbox._typing.ParentModelT | None = None) -> bool :canonical: django_twc_toolbox.admin.ReadOnlyModelAdmin.has_change_permission ```{autodoc2-docstring} django_twc_toolbox.admin.ReadOnlyModelAdmin.has_change_permission ``` ```` ````` ````{py:class} ReadOnlyStackedInline :canonical: django_twc_toolbox.admin.ReadOnlyStackedInline Bases: {py:obj}`django_twc_toolbox.admin.ReadOnlyModelAdmin`\[{py:obj}`django_twc_toolbox._typing.ChildModelT`\, {py:obj}`django_twc_toolbox._typing.ParentModelT`\], {py:obj}`django.contrib.admin.StackedInline`\[{py:obj}`django_twc_toolbox._typing.ChildModelT`\, {py:obj}`django_twc_toolbox._typing.ParentModelT`\] ```{autodoc2-docstring} django_twc_toolbox.admin.ReadOnlyStackedInline ``` ```` ````{py:class} ReadOnlyTabularInline :canonical: django_twc_toolbox.admin.ReadOnlyTabularInline Bases: {py:obj}`django_twc_toolbox.admin.ReadOnlyModelAdmin`\[{py:obj}`django_twc_toolbox._typing.ChildModelT`\, {py:obj}`django_twc_toolbox._typing.ParentModelT`\], {py:obj}`django.contrib.admin.TabularInline`\[{py:obj}`django_twc_toolbox._typing.ChildModelT`\, {py:obj}`django_twc_toolbox._typing.ParentModelT`\] ```{autodoc2-docstring} django_twc_toolbox.admin.ReadOnlyTabularInline ``` ````