Metadata-Version: 1.1
Name: marshmallow-sqlalchemy-referential
Version: 1.0.4
Summary: A marshmallow-sqlalchemy field allows referential CRUD on relational fields.
Home-page: https://github.com/twopicode/marshmallow-sqlalchemy-referential
Author: Nick Whyte
Author-email: nick@nickwhyte.com
License: UNKNOWN
Description: marshmallow-sqlalchemy-referential
        ============================================
        
        Installation
        ++++++++++++
        
          pip install marshmallow-sqlalchemy-referential
        
        Sample Usage
        ++++++++++++
        
        .. code-block:: python
        
          import sqlalchemy as sa
          from sqlalchemy.ext.declarative import declarative_base
          from marshmallow_sqlalchemy_referential import Referential
          from marshmallow_sqlalchemy import ModelSchema
          from marshmallow import fields
        
          Base = declarative_base()
        
          user_group_assoc = sa.Table(
            'user_group_assoc', Base.metadata,
            sa.Column('user_id', sa.Integer, sa.ForeignKey('user.id')),
            sa.Column('group_id', sa.Integer, sa.ForeignKey('group.id'))
          )
        
          class User(Base):
              __tablename__ = 'user'
              
              id = sa.Column(sa.Integer(), primary_key=True)
              groups = sa.orm.relationship('Group', secondary=user_group_assoc)
        
          class Group(Base):
              __tablename__ = 'group'
        
              id = sa.Column(sa.Integer(), primary_key=True)
              users = sa.orm.relationship('User', secondary=user_group_assoc)
          
        
          class GroupSchema(ModelSchema):
            class Meta():
                dump_only = ['id']
        
            id = fields.Integer()
        
          class UserSchema(ModelSchema):
            class Meta():
                dump_only = ['id']
        
            id = fields.Integer()
            groups = Referential(GroupSchema, model=Group, many=True)
        
        
          
        
        
Platform: UNKNOWN
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python
