Create in Symfony

Create

Met het create deel ga je een nieuwe entiteit aanmaken en in de database opslaan. Je voegt bijvoorbeeld een gebruiker toe aan jouw systeem.

//Volgende staat in de use sectie
use App\Entity\User;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;

public function create(EntityManagerInterface $entityManager) {
    //We maken een nieuwe (lege) gebruiker aan
    $user = new User();
    //We bereiden de database voor om de nieuwe gebruiker op te slaan
    $entityManager->persist($user);
    //We voeren de voorbereide statements uit
    $entityManager->flush();
}
Simpel voorbeeld van een create

Create met data

Je kan met de getters en setters van de Entity de data natuurlijk ook aanpassen soms moet dat ook omdat sommige velden verplicht zijn.

//Volgende staat in de use sectie
use App\Entity\User;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;

public function create(EntityManagerInterface $entityManager) {
    //We maken een nieuwe (lege) gebruiker aan
    $user = new User();
    //We zetten de naam en het emailadres via de setters
    $user->setName('Michiel');
    $user->setEmail('m.auerbach@rocmondriaan.nl');

    //Nu alle velden die verplicht zijn ook gezet zijn, kunnen we de gebruiker opslaan
    //We bereiden de database voor om de nieuwe gebruiker op te slaan
    $entityManager->persist($user);
    //We voeren de voorbereide statements uit
    $entityManager->flush();
}
Dit is een simpele versie, uiteraard moet je waarschijnlijk nog wat data toevoegen aan de User entity. Meer informatie lees je in de paragraaf van de Model/ Entity, ook over de werking met getters en setters Hoe je data verstuurd en aanpast via een formulier lees je weer bij het hoofdstuk over formulieren