# marshmallow-sqlalchemy **Repository Path**: mirrors_deckar01/marshmallow-sqlalchemy ## Basic Information - **Project Name**: marshmallow-sqlalchemy - **Description**: SQLAlchemy integration with marshmallow - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: dev - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-09-24 - **Last Updated**: 2026-04-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ********************** marshmallow-sqlalchemy ********************** |pypi-package| |build-status| |docs| |marshmallow3| Homepage: https://marshmallow-sqlalchemy.readthedocs.io/ `SQLAlchemy `_ integration with the `marshmallow `_ (de)serialization library. Declare your models =================== .. code-block:: python import sqlalchemy as sa from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import scoped_session, sessionmaker, relationship, backref engine = sa.create_engine('sqlite:///:memory:') session = scoped_session(sessionmaker(bind=engine)) Base = declarative_base() class Author(Base): __tablename__ = 'authors' id = sa.Column(sa.Integer, primary_key=True) name = sa.Column(sa.String) def __repr__(self): return ''.format(self=self) class Book(Base): __tablename__ = 'books' id = sa.Column(sa.Integer, primary_key=True) title = sa.Column(sa.String) author_id = sa.Column(sa.Integer, sa.ForeignKey('authors.id')) author = relationship("Author", backref=backref('books')) Base.metadata.create_all(engine) Generate marshmallow schemas ============================ .. code-block:: python from marshmallow_sqlalchemy import ModelSchema class AuthorSchema(ModelSchema): class Meta: model = Author class BookSchema(ModelSchema): class Meta: model = Book # optionally attach a Session # to use for deserialization sqla_session = session author_schema = AuthorSchema() (De)serialize your data ======================= .. code-block:: python author = Author(name='Chuck Paluhniuk') book = Book(title='Fight Club', author=author) session.add(author) session.add(book) session.commit() author_schema.dump(author).data # {'books': [123], 'id': 321, 'name': 'Chuck Paluhniuk'} author_schema.load(dump_data, session=session).data # Get it now ========== :: pip install -U marshmallow-sqlalchemy Documentation ============= Documentation is available at https://marshmallow-sqlalchemy.readthedocs.io/ . Project Links ============= - Docs: https://marshmallow-sqlalchemy.readthedocs.io/ - Changelog: https://marshmallow-sqlalchemy.readthedocs.io/en/latest/changelog.html - PyPI: https://pypi.python.org/pypi/marshmallow-sqlalchemy - Issues: https://github.com/marshmallow-code/marshmallow-sqlalchemy/issues License ======= MIT licensed. See the bundled `LICENSE `_ file for more details. .. |pypi-package| image:: https://badge.fury.io/py/marshmallow-sqlalchemy.svg :target: http://badge.fury.io/py/marshmallow-sqlalchemy :alt: Latest version .. |build-status| image:: https://travis-ci.org/marshmallow-code/marshmallow-sqlalchemy.svg?branch=dev :target: https://travis-ci.org/marshmallow-code/marshmallow-sqlalchemy :alt: Travis-CI .. |docs| image:: https://readthedocs.org/projects/marshmallow-sqlalchemy/badge/ :target: http://marshmallow-sqlalchemy.readthedocs.io/ :alt: Documentation .. |marshmallow3| image:: https://img.shields.io/badge/marshmallow-3-blue.svg :target: https://marshmallow.readthedocs.io/en/latest/upgrading.html :alt: marshmallow 3 compatible