đŸ’Ÿ Archived View for deblan.io â€ș posts â€ș 619.gmi captured on 2023-01-29 at 02:34:30. Gemini links have been rewritten to link to archived content

View Raw

More Information

-=-=-=-=-=-=-

Générer un CRUD dans Murph

Murph est un **framework open-source pour construire des CMS**. Il est développé à l'aide de **Symfony** et permet de gérer des sites web avec **plusieurs noms de domaines et en plusieurs langues**.

Je vais entamer une

série de tutoriaux pour présenter les fonctionnalités de Murph

.

Cet article va pour expliquer comment utiliser Murph et générer des

interfaces de CRUD

afin de créer, voir, mettre à jour et supprimer des entités.

Dans un premier temps, il faut créer une nouvelle entité `Example`. Si vous avez déjà réaliser cette opération, vous pouvez passer à l'étape suivante.

dev@project $ php bin/console make:entity Example

j'ai décidé d'ajouter ces attributs :

On doit maintenant éditer `App\Entity\Example` et implémenter l'interface `App\Core\Entity\EntityInterface` :

<?php

namespace App\Entity;

use App\Core\Entity\EntityInterface;
use App\Repository\ExampleRepository;
use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity(repositoryClass=ExampleRepository::class)
 */
class Example implements EntityInterface
{

Puis il faut mettre à jour la base de données :

dev@project $ make doctrine-migration

Ensuite on va générer :

dev@project $ php bin/console make:repository-query ExampleRepository
dev@project $ php bin/console make:factory ExampleFactory Example
dev@project $ php bin/console make:form ExampleType Example

Générons à présent le CRUD :

dev@project $ php bin/console make:crud-controller \
  ExampleAdminController \
  Example \
  ExampleRepositoryQuery \
  ExampleFactory \
  ExampleType

Enfin, ajoutons le lien dans le menu du backoffice :

{{ include('@Core/admin/module/_menu_section.html.twig', {label: 'My section'}) }}

<ul class="nav flex-column">
    {{ include('@Core/admin/module/_menu_item.html.twig', {
        id: 'example',
        label: 'Examples',
        route: path('admin_example_index'),
        icon: 'fa fa-pen'
    }) }}
</ul>


et c'est terminé !

Vous pouvez commencer Ă  personnaliser le CRUD en modifiant `ExampleAdminController` et sa methode `getConfiguration`.

La documentation est ici

.

<iframe title="Murph - Générer un CRUD dans Murph" src="https://peertube.fr/videos/embed/08422ab9-3ed8-4904-8b43-25a2aa7210f9" allowfullscreen="" sandbox="allow-same-origin allow-scripts allow-popups" style="aspect-ratio: 16 / 9; width: 100%; height: auto" frameborder="0"></iframe>