{"library":"sqlalchemy-serializer","title":"SQLAlchemy Serializer","type":"library","description":"SQLAlchemy Serializer (sqlalchemy-serializer) is a mixin for SQLAlchemy models that simplifies their serialization into dictionaries or JSON, often used in API contexts. It handles relationships, allows field exclusion/inclusion, and supports nested serialization. The current version is 1.6.2, and it typically sees regular maintenance releases.","language":"python","status":"active","last_verified":"Fri Apr 17","install":{"commands":["pip install sqlalchemy-serializer"],"cli":null},"imports":["from sqlalchemy_serializer import SerializerMixin"],"auth":{"required":false,"env_vars":[]},"links":{"homepage":null,"github":"https://github.com/n0nSmoker/SQLAlchemy-serializer","docs":null,"changelog":null,"pypi":"https://pypi.org/project/sqlalchemy-serializer/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"from sqlalchemy import create_engine, Column, Integer, String\nfrom sqlalchemy.orm import sessionmaker, declarative_base\nfrom sqlalchemy_serializer import SerializerMixin\n\nBase = declarative_base()\n\nclass User(Base, SerializerMixin):\n    __tablename__ = 'users'\n    id = Column(Integer, primary_key=True)\n    name = Column(String)\n    email = Column(String)\n\n    def __repr__(self):\n        return f\"<User(id={self.id}, name='{self.name}')>\"\n\nengine = create_engine('sqlite:///:memory:')\nBase.metadata.create_all(engine)\nSession = sessionmaker(bind=engine)\nsession = Session()\n\nuser = User(name='Alice', email='alice@example.com')\nsession.add(user)\nsession.commit()\n\n# Serialize to dictionary\nuser_dict = user.to_dict()\nprint(\"Serialized User:\", user_dict)\n\n# Serialize with specific fields\nuser_name_only = user.to_dict(only=('name',))\nprint(\"User name only:\", user_name_only)\n\nsession.close()","lang":"python","description":"This quickstart demonstrates how to apply `SerializerMixin` to an SQLAlchemy model and use its `to_dict()` method for basic serialization. It sets up an in-memory SQLite database, creates a simple User model, adds a user, and then serializes it, showing how to include only specific fields.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}