Réponse

@Security("is_granted('ROLE_USER') and user === ad.getAuthor()", message="Vous n'avez pas accès à cette ressource")
public function delete(Ad $ad, ObjectManager $manager){
$manager->remove($ad);
$manager->flush();}

Explication

/**
* Permet de supprimer une annonce
* @Route("/ads/{slug}/delete", name="ads_delete")
* @Security("is_granted('ROLE_USER') and user === ad.getAuthor()", message="Vous n'avez pas accès à cette ressource")
* @param Ad $ad
* @param ObjectManager $manager
* @return Response
*
*/

public function delete(Ad $ad, ObjectManager $manager){
$manager->remove($ad);
$manager->flush();

$this->addFlash(
'success',
"L'annonce <strong> {$ad->getTitle()}</strong> a bien été supprimée"
);

Question

Minimum requis pour configurer, sécuriser la Route("/ads/{id}/delete) et faire en sorte de supprimer l'annonce en base

Thématique