from sqlalchemy import Column, Integer, ForeignKey from sqlalchemy.orm import relationship from crudkit.core.base import CRUDMixin from muck.models.dbref import Dbref, ObjectType class Thing(Dbref): __tablename__ = "things" id = Column(Integer, ForeignKey("dbref.id"), primary_key=True) value = Column(Integer, nullable=False, default=0) home_id = Column(Integer, ForeignKey("dbref.id"), nullable=False) home = relationship("Dbref", remote_side=[CRUDMixin.id], foreign_keys=[home_id]) __mapper_args__ = { "polymorphic_identity": ObjectType.THING }