Skip to content

Show difference of relations #670

@knallcharge

Description

@knallcharge

Feature Request

I noticed when viewing a revision, the differences in relations are not shown which is a crucial feature.

E.g. I have ObjectA have a ManyToOne-relation to ObjectB. If I change the relation, a new revision is created, the ID in the revision-entry in the objecta_audit-table also changes, but the viewer skips the attribute.

I can add all ManyToOne-relations to the detail-view adding this code:

src/AuditReader.php:getEntityValues (line 680)

        foreach ($metadata->getAssociationMappings() as $fieldName => $mapping) {
            if ($mapping instanceof ManyToOneAssociationMapping) {
                $fields[]=$fieldName;
            }
        }

But when I try to view the differences between the last revisions, I run into an endless recursion-error caused in ArrayDiff::compareObjects.
Uncommenting the lines 82-84 in that function will show the compared revisions just fine, so I was wondering why the recursion is necessary as everything's looking good without it.

Any hint to get this working (without breaking cases that I don't have in mind right now) is appreciated.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions