Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
from dj_kaos_utils.admin import EditReadonlyAdminMixin
from dj_kaos_utils.admin import PrepopulateSlugAdminMixin
from dj_kaos_utils.forms import unrequire_form

from building_blocks.consts.field_names import *


class EnhancedHasSlugModelAdminMixin(EditReadonlyAdminMixin):
    edit_readonly_fields = (SLUG,)


class EnhancedSluggedKaosModelAdminMixin(
    PrepopulateSlugAdminMixin,
    EnhancedHasSlugModelAdminMixin
):
    slug_source = NAME

    def get_form(self, request, obj=None, change=False, **kwargs):
        form = super().get_form(request, obj, change, **kwargs)
        return unrequire_form(form, ('slug',)) if not obj else form


__all__ = (
    'EnhancedHasSlugModelAdminMixin',
    'EnhancedSluggedKaosModelAdminMixin',
)