Skip to content
Snippets Groups Projects

Modify the order

Merged Maxime Veber requested to merge order-modifications into master
1 file
+ 61
32
Compare changes
  • Side-by-side
  • Inline
+ 61
32
@@ -202,38 +202,6 @@ Note:
- On peut passer le constructeur en privé pour encourager l'utilisation des
constructeurs nommés.
---
## Les embeddables
```php
use Doctrine\ORM\Annotation as ORM;
class NiceArticle
{
private $uuid;
/** @ORM\Embedded(class = "ArticleContent") */
private $articleContent;
public function __construct(ArticleContent $articleContent)
{
$this->uuid = Uuid::generate();
$this->articleContent = $articleContent;
}
}
```
Note:
- À utiliser en cas de Value Object composite
- Des soucis avec la nullabilité, contournables avec un package
- Ne peuvent contenir des colonnes complexes
---
## tarifhaus/doctrine-nullable-embeddable
Nécessite un setter.
---
## Les custom types
@@ -282,6 +250,67 @@ d'une base vers une autre, et que la nouvelle base peut elle aussi être
alimentée directement.
---
## Les embeddables
```php
use Doctrine\ORM\Annotation as ORM;
class NiceArticle
{
private $uuid;
/** @ORM\Embedded(class = "ArticleContent") */
private $articleContent;
public function __construct(ArticleContent $articleContent)
{
$this->uuid = Uuid::generate();
$this->articleContent = $articleContent;
}
}
```
```php
/** @ORM\Embeddable() **/
class ArticleContent
{
/** @ORM\Column() **/
private $content;
/** @ORM\Column() **/
private $lastModification;
}
```
Note:
- À utiliser en cas de Value Object composite
- Des soucis avec la nullabilité, contournables avec un package
- Ne peuvent contenir des colonnes complexes
---
## Les embeddables nullables
```php
use Doctrine\ORM\Annotation as ORM;
class NiceArticle
{
private $uuid;
/** @ORM\Embedded(class = "ArticleContent", nullable=true) */
private $articleContent;
}
```
<span style="font-size: 1em;"></span>
---
## tarifhaus/doctrine-nullable-embeddable
Nécessite un setter.
---
## Les repositories
- Vos repositories en service facilement
Loading