Cet article est la première partie d'une série :
Lors d'un projet Bolt CMS, nous avons mis en œuvre un formulaire de modification de ses données personnelles dans un annuaire. L’individu disposait d’informations dont les champs (nom, prénom, téléphone, email, adresse, profession ...) et le but était de pouvoir modifier, ajouter ou supprimer ses informations personnelles.
Nous nous sommes basés sur ce modèle de données pour notre formulaire :
Lorsqu’on parle de modèle de données, trois principaux termes sont importants: entité, attribut et relation.
Concernant les relations, elles se font sur du OneToMany pour une personne:
Voici un code d’exemple d’une entité accompagné de ses attributs (get + setters inclus) et d’une relation avec une autre entité nommé Person:
// src/Entity/Profession.php
<?php
namespace App\Entity;
use App\Repository\ProfessionRepository;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass=ProfessionRepository::class)
* @ORM\HasLifecycleCallbacks
*/
class Profession{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/** @ORM\Column(type="string", length=255) */
private $description;
/**
* @ORM\ManyToOne(targetEntity=Person::class, inversedBy="professions")
* @ORM\JoinColumn(nullable=false)
*/
private $person;
public function getId(): ?int
{
return $this->id;
}
public function getDescription(): ?string
{
return $this->description;
}
public function setDescription(string $description): self
{
$this->description = $description;
return $this;
}
public function getPerson(): ?Person
{
return $this->person;
}
public function setPerson(?Person $person): self
{
$this->person = $person;
return $this;
}
}
Nous allons voir dans une deuxième partie, qu'est-ce que API Platform ? Et comment l'a-t-on utilisé dans notre projet Bolt CMS pour le formulaire ?
Lire la suite : Partie 2/3 - Installation et configuration d'API Platform
La conférence annuelle Ibexa se tiendra les 30 et 31 janvier 2025 à Barcelone et ...
La sécurité des données, et en particulier des mots de passe des utilisateurs, est une ...
2024 aura été une année riche en tempêtes, avec ses hauts et ses bas. Mais ...
Pour célébrer la sortie de Dataflow 5 pour Symfony 7, voici un retour d'expérience sur ...
🎯 Nous relevons le défi de lancer un grand concours : Vous faire gagner un ...
Comment calculer dynamiquement des frais de port ? La documentation officielle qui explique comment créer ...
Comment créer un nouveau type d'attribut produit dans Ibexa Commerce ?
A la recherche d'un poste de travail temporaire ou permanent ? Vous recherchez un environnement ...
Après une découverte de surface d'Ibexa Commerce, entrons plus dans le détail pour comprendre son ...
La conférence annuelle Ibexa se tiendra les 30 et 31 janvier 2025 à Barcelone et ...
La sécurité des données, et en particulier des mots de passe des utilisateurs, est une ...
2024 aura été une année riche en tempêtes, avec ses hauts et ses bas. Mais ...
Pour célébrer la sortie de Dataflow 5 pour Symfony 7, voici un retour d'expérience sur ...
🎯 Nous relevons le défi de lancer un grand concours : Vous faire gagner un ...
Comment calculer dynamiquement des frais de port ? La documentation officielle qui explique comment créer ...
Comment créer un nouveau type d'attribut produit dans Ibexa Commerce ?
A la recherche d'un poste de travail temporaire ou permanent ? Vous recherchez un environnement ...
Après une découverte de surface d'Ibexa Commerce, entrons plus dans le détail pour comprendre son ...