def to_pandas(objs, models=None, get_related=True, include_all_attributes=
    True, validate=True):
    """ Generate a pandas representation of a collection of objects

    Args:
        objs (:obj:`list` of :obj:`Model`): objects
        models (:obj:`list` of :obj:`Model`, optional): models in the order that they should
            appear as worksheets; all models which are not in `models` will
            follow in alphabetical order
        get_related (:obj:`bool`, optional): if :obj:`True`, write `objects` and all their related objects
        include_all_attributes (:obj:`bool`, optional): if :obj:`True`, export all attributes including those
            not explictly included in `Model.Meta.attribute_order`
        validate (:obj:`bool`, optional): if :obj:`True`, validate the data

    Returns:
        :obj:`dict`: dictionary that maps models (:obj:`Model`) to
            the instances of each model (:obj:`pandas.DataFrame`)
    """
    from obj_tables.io import PandasWriter
    return PandasWriter().run(objs, models=models, get_related=get_related,
        include_all_attributes=include_all_attributes, validate=validate)
