Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Charcoal\Relation #4

Open
wants to merge 17 commits into
base: master
Choose a base branch
from
Open

Charcoal\Relation #4

wants to merge 17 commits into from

Conversation

dominiclord
Copy link
Contributor

Adds support for creating and working with relationships between models, using an intermediate object. A source model has one or many relationships with a target model. These relationships are stored in an intermediate pivot model.

Copy link
Member

@mcaskill mcaskill left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think CMS is the right place for model relationships.

This should either be in core, object, or its own repository.

@dominiclord
Copy link
Contributor Author

@mcaskill I agree with CMS not being the right place. However, we have to start somewhere, and like many Charcoal components that have found their place in the proper packages, we can migrate parts of Relation to wherever it makes more sense as we start using it.

- Creating a Selectize based Relation property input for target object selection
- Admin forms for Pivot creation
- Hiding non human 'pivot-interface' fields
- Various renamings and removals for clarity
- Create a relation from the quickform and associate it to the proper objects (target & source)
- Implemented 'group' property on "Pivot" and the Relation widgets
- Updated & fixed Relation actions
- Various renamings and removals for clarity
- Query all related objects from multiple sources for a specific object in the backend widget (however, the ORDER BY is broken)
- Fixed missing parameters being sent to LinkAction
- Implement renderable heading on target object types for relation list
- Updated various RelationWidget styles/templating
- Properly sort the mixed object collection retrieved by 'PivotAwareTrait::pivots()'
- Fixed UnlinkAction
- Fixed RelationWidget load actions
- Display 'heading' as determined by PivotableTrait on target objects
- Caching targetObjectTypes extracted from metadatas
- Force usage of PivotableInterface on target object
- Added a removePivots() for pivot targets using PivotableInterface
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants