code: def get_fields(cls, inlcude_base=False, include_id=False):
          
          for field in cls._meta.fields:
              if field.name == 'deleted':
                  continue
              if not include_id and field.name == 'id':
                  continue
              if not inlcude_base and field.name in ['created_at', 'updated_at']:
                  continue
              yield field
docs: Get model fields