7 مستودعات
Mechanisms for mapping a single entity to multiple target types through a shared association interface within an ORM.
Distinguishing note: None of the candidates were provided; this is a specific data modeling pattern for ORMs.
Explore 7 awesome GitHub repositories matching data & databases · Polymorphic Associations. Refine with filters or upvote what's useful.
Sequelize is an object-relational mapping library that provides a unified interface for managing relational data through code. By implementing the Active Record pattern, it maps database tables to application objects, allowing developers to perform standard create, read, update, and delete operations using high-level method calls. The library abstracts complex database interactions by translating these calls into optimized, engine-specific SQL statements, ensuring consistent behavior across different database systems. The project distinguishes itself through a comprehensive suite of tools for
Sequelize enables polymorphic associations, allowing a single entity to belong to more than one other type of entity using a shared interface.
SQLAlchemy is a comprehensive Python SQL toolkit and object-relational mapper that provides a full suite of tools for interacting with relational databases. It serves as a foundational layer for database connectivity, offering both a high-level object-oriented interface for data persistence and a programmatic SQL expression language for constructing complex, dialect-agnostic queries. The project distinguishes itself through its sophisticated unit of work persistence, which coordinates atomic transactions and tracks object state changes to minimize redundant database operations. It provides a
Associates multiple parent types with a single child object using polymorphic discriminators or flexible foreign key patterns.
PaperTrail is a Ruby on Rails versioning library and database audit trail system. It tracks changes to database models by capturing historical snapshots of object states and associating every modification with the specific user or process responsible for the update. The project provides a model state reification tool to reconstruct model instances as they existed at a specific point in time and a data recovery framework to restore deleted database records by reifying their last known version. The system covers a broad range of capabilities including version history navigation, changeset-base
Uses polymorphic associations to link a single versions table to multiple different model types.
Acts-as-taggable-on هي مكتبة وسوم (tagging) لقواعد البيانات العلائقية لتطبيقات Ruby on Rails. توفر نظاماً لربط تسميات مخصصة بسجلات قاعدة البيانات لتمكين تصنيف المحتوى وتصفيته. تتميز المكتبة بإطار عمل للوسوم السياقية يسمح لسجل واحد بالاحتفاظ بمجموعات مختلفة من التسميات لأغراض متنوعة. كما تتضمن نظام وسوم متعدد المستأجرين (multi-tenant) يحدد نطاق التسميات لحسابات أو مجموعات معينة لضمان خصوصية البيانات. تدعم الأداة استرجاع السجلات بناءً على الوسوم، والبحث عبر المطابقات الدقيقة أو الاستثناءات، وحساب تكرار الوسوم عبر المجموعات. كما تتيح اكتشاف الكائنات ذات الصلة بناءً على الوسوم المشتركة وتتبع ملكية الوسوم للتمييز بين الوسوم العامة وتلك الخاصة بالمستخدم.
Uses a shared join table with type and ID columns to link tags to any database model.
Twill هو مجموعة أدوات CMS لـ Laravel ومولد لوحة تحكم مصمم لبناء وحدات تحكم إدارية مخصصة وأنظمة إدارة محتوى. يعمل كإطار عمل CMS بدون رأس (headless) ومجموعة أدوات لتحديد نماذج المحتوى وإدارة البيانات المنظمة من خلال واجهة إدارية مخصصة. يتميز المشروع بمحرر كتل مرئي يسمح للناشرين بترتيب وتكوين أقسام المحتوى القابلة لإعادة الاستخدام عبر واجهة السحب والإفلات. يتضمن مديراً مخصصاً للأصول الرقمية لتخزين واقتصاص وتحسين الصور والملفات عبر التخزين المحلي أو السحابي، بالإضافة إلى مدير محتوى متعدد اللغات للتعامل مع الحقول المترجمة والروابط الدائمة المترجمة. توفر المنصة قدرات واسعة لإدارة المحتوى والوسائط، بما في ذلك تتبع الإصدار، وجدولة النشر، وتنظيم الصفحات الهرمي. وتغطي أدوات إدارية واسعة النطاق مثل التحكم في الوصول القائم على الأدوار، والبحث العالمي، وسقالات سطر الأوامر للتوليد السريع لوحدات CRUD وترحيلات قاعدة البيانات. يتكامل النظام مع نماذج Laravel باستخدام السمات (traits) لتمكين النشر ومعالجة الوسائط.
Uses polymorphic associations to link media assets across multiple different content types.
Audited is a Ruby on Rails audit log library and change data capture framework. It tracks model changes by recording previous and current attribute values during create, update, and destroy operations to maintain a complete history of database modifications. The system functions as a database versioning tool and user activity tracker. It allows for the retrieval of historical record states by timestamp or index, enables reverting models to previous versions, and associates record modifications with specific user identities and remote IP addresses. The library includes capabilities for sensit
Uses polymorphic associations to link a single audit table to any model within the system.
This project is a Java-based object-relational mapping framework that utilizes the active record pattern to simplify database interactions. It provides a comprehensive data access layer that binds database tables directly to application objects, enabling developers to perform CRUD operations, manage complex entity relationships, and execute queries through a fluent, type-safe interface. Designed for integration with Spring Boot, the framework abstracts database complexities while maintaining support for native compilation and asynchronous execution. The framework distinguishes itself through
Supports polymorphic associations that allow a single model to link to multiple target types using type and ID keys.