from django.db import models
from django.contrib.admin import ModelAdmin


class MyModel(models.Model):
    title = models.CharField('Meta Title of object', max_length=80, blank=True)
    slug = models.CharField('Meta Slug of object', max_length=80, blank=True)


class MyModelAdmin1(ModelAdmin):

    fields = ('title', )


class MyModelAdmin2(ModelAdmin):

    fieldset = ('title', )

    # def get_fields(self, request, obj=None):
    #     """
    #     Hook for specifying fields.
    #     """
    #     if self.fields:
    #         return self.fields
    #     # _get_form_for_get_fields() is implemented in subclasses.
    #     form = self._get_form_for_get_fields(request, obj)
    #     return [*form.base_fields, *self.get_readonly_fields(request, obj)]

    # def _get_form_for_get_fields(self, request, obj):
    #     return self.get_form(request, obj, fields=None)

    # def get_form(self, request, obj=None, change=False, **kwargs):
    #     """
    #     Return a Form class for use in the admin add view. This is used by
    #     add_view and change_view.
    #     """
    #     if 'fields' in kwargs:
    #         fields = kwargs.pop('fields')
    #     else:
    #         fields = flatten_fieldsets(self.get_fieldsets(request, obj))
    #     ...


print(MyModelAdmin1(MyModel, None).get_fields(None))
print(MyModelAdmin2(MyModel, None).get_fields(None))
