Skip to content

Conversation

@davysumo
Copy link
Contributor

Bug: Fetch entity for breadcrumb so we can access its properties

@davysumo davysumo requested a review from sanderdlm January 26, 2023 11:13
@sanderdlm
Copy link

sanderdlm commented Jan 26, 2023

Voor de duidelijkheid in de toekomst: deze change is nodig sinds Symfony 6.2 (symfony/symfony#43854), waar ParamConverter vervangen is door een nieuwe EntityArgumentResolver + attribuut.

Bij ParamConverters kregen we direct het geresolvede object terug:

#[Route('/blog/{slug}')]
public function show(Post $post)
{
}

// This would've been an object, Post
$attribute = $this->request->attributes->get($attributeName);

Maar op de nieuwe manier was dit geen object meer, maar het originele ID, niet geresolved dus. Hoe dit komt, geen idee, maar de fix is dus om zelf een EntityManager te gaan autowiren en zelf een find te doen op ID.

#[Route('/blog/{slug}')]
public function show(Post $post)
{
}

// This is now an ID, for example: 5
$attributeId = $this->request->attributes->get($attributeName);
// and we have to do the following:
$attribute = $this->manager->getRepository($name)->find($attributeId);

@sanderdlm sanderdlm merged commit 378d975 into sumocoders:master Jan 26, 2023
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