def convert(
        self,
        columns: List[str],
        model: Optional[Type[Model]] = None,
        nested: bool = True,
        parent_schema_name: Optional[str] = None,
    ) -> SQLAlchemyAutoSchema:
        """
            Creates a Marshmallow ModelSchema class


        :param columns: List with columns to include, if empty converts all on model
        :param model: Override Model to convert
        :param nested: Generate relation with nested schemas
        :return: ModelSchema object
        """
        super(Model2SchemaConverter, self).convert(
            columns, model=model, nested=nested, parent_schema_name=parent_schema_name
        )

        class SchemaMixin:
            pass

        _model = model or self.datamodel.obj
        _datamodel = self.datamodel.__class__(_model)

        ma_sqla_fields_override = {}

        _columns = list()
        tree_columns = columns2Tree(columns)
        for column in tree_columns.root.children:
            # Get child model is column is dotted notation
            ma_sqla_fields_override[column.name] = self._column2field(
                _datamodel, column, nested, parent_schema_name=parent_schema_name
            )
            _columns.append(column.name)
        for k, v in ma_sqla_fields_override.items():
            setattr(SchemaMixin, k, v)
        return self._meta_schema_factory(
            _columns, _model, SchemaMixin, parent_schema_name=parent_schema_name
        )()

            Creates a Marshmallow ModelSchema class


        :param columns: List with columns to include, if empty converts all on model
        :param model: Override Model to convert
        :param nested: Generate relation with nested schemas
        :return: ModelSchema object
        
flask_appbuilder/api/convert.py