Create and extend entities
Create Entities
Define new Doctrine entities with fields, relations, and ORM mappings.
Extend Entities
Add fields, enums, extended associations, serialized fields, and custom form types to existing entities.
Configure Entities
Define configuration attributes, access entity configuration, and add configuration options.
Create Custom Entities
Build fully custom entities with extended capabilities using the Oro entity extension system.
CRUD and data management
CRUD Operations
Enable standard create, read, update, and delete pages for an entity.
Customize CRUD Pages
Modify form layouts, add custom fields, and override default CRUD behavior.
Datagrids
Configure filterable, sortable, paginated data grids for entity listings.
Customize Datagrids
Extend existing datagrids with custom columns, filters, actions, and mass actions.
Entity features
Database Migrations
Manage database schema changes with versioned migration scripts.
Entity Aliases
Define short aliases for entities used in URLs and API routes.
Entity Activities
Associate activities (calls, tasks, emails) with any entity.
Entity Name Resolver
Configure how entity names are formatted and displayed in the UI.
Entity Fallback Values
Provide fallback value chains for entity fields based on scope hierarchy.
Entity Manager
Work with Doctrine’s entity manager in Oro-specific scenarios.
Events
Listen to entity lifecycle events dispatched by OroEntityBundle.
Dictionaries
Create and manage enum/dictionary entities for use in select fields.
Attributes
Configure dynamic attributes (custom fields) for product and other entities.
Access control and data integrity
Protect Entities with ACLs
Define and apply access control list rules to entity classes and instances.
Custom Field Validation
Add validation constraints to extended and custom entity fields.
Fixtures
Load initial and test data using Doctrine data fixtures.
Data Sanitization
Configure data sanitization rules for GDPR compliance.
Performance and advanced topics
Doctrine Field Types
Use Oro-specific Doctrine field types for money, percent, and localized values.
Partial Indexes
Create partial database indexes to improve query performance.
Query Hint Resolver
Apply ORM query hints including translation, currency, and ACL hints.
Repositories as Services
Register Doctrine repositories as Symfony services for dependency injection.
Transaction Watchers
Execute code around database transaction boundaries.
Profiler: Duplicated Queries
Detect and eliminate N+1 query problems using the built-in query profiler.