Blog


Jak skonfigurować i zacząć używać EasyAdmin w Symfony

Tagi: programowanie symfony php Dodano 2024-07-04

EasyAdmin to potężne narzędzie do tworzenia paneli administracyjnych w aplikacjach Symfony. Dzięki niemu możesz szybko i efektywnie zarządzać danymi swojej aplikacji bez konieczności pisania dużej ilości kodu. W tym artykule przeprowadzimy Cię przez proces instalacji, konfiguracji i podstawowego użycia EasyAdmin.

  1. Instalacja EasyAdmin
  2. Konfiguracja początkowa
  3. Tworzenie panelu administracyjnego
  4. Dostosowywanie panelu
  5. Podsumowanie

Instalacja EasyAdmin

Aby zainstalować EasyAdmin, potrzebujesz projektu Symfony. Jeśli go jeszcze nie masz, możesz stworzyć nowy projekt:

symfony new my_project --full

cd my_project

Następnie zainstaluj EasyAdmin przy użyciu Composer:

composer require easycorp/easyadmin-bundle

Konfiguracja początkowa

Po zainstalowaniu EasyAdmin, a nie używasz Flex to musisz dodać go do swojego projektu Symfony. W tym celu, otwórz plik `config/bundles.php` i dodaj linię:

EasyCorp\Bundle\EasyAdminBundle\EasyAdminBundle::class => ['all' => true],

EasyAdmin korzysta z własnego systemu trasowania, więc w przypadku braku Flex musisz dodać trasę w pliku `config/routes/easy_admin.yaml`:

easy_admin_bundle:

    resource: "@EasyAdminBundle/Controller/"

    type: annotation

    prefix: /admin

Ta konfiguracja ustawia URL panelu administracyjnego na `/admin`.

Tworzenie panelu administracyjnego

Teraz, gdy EasyAdmin jest zainstalowany i skonfigurowany, możesz zacząć tworzyć panel administracyjny. Przede wszystkim, musisz utworzyć encje, które będą zarządzane przez panel. Przykładowo, utwórzmy encję `Product`:

symfony console make:entity Product

Dodajmy podstawowe pola w encji:

// src/Entity/Product.php



namespace App\Entity;



use Doctrine\ORM\Mapping as ORM;



#[ORM\Entity()]

class Product

{

    #[ORM\Id]

    #[ORM\GeneratedValue]

    #[ORM\Column(type: 'integer')]

    private $id;



    #[ORM\Column(type: 'string', length: 255)]

    private $name;



    #[ORM\Column(type: 'decimal', scale: 2)]

    private $price;



    // Gettery i settery...

}

Zaktualizuj bazę danych, aby odzwierciedlić nowe zmiany:

symfony console make:migration

symfony console doctrine:migrations:migrate

Dostosowywanie panelu

Kolejnym krokiem jest skonfigurowanie EasyAdmin do zarządzania encją `Product`. W tym celu utwórz plik `config/packages/easy_admin.yaml`:

easy_admin:

    entities:

        - App\Entity\Product

Teraz możesz przejść do `/admin` w przeglądarce i zobaczyć prosty panel zarządzania encją `Product`.

EasyAdmin oferuje wiele opcji dostosowywania interfejsu. Na przykład, aby zmienić pola wyświetlane na liście, edytuj `easy_admin.yaml`:

easy_admin:

    entities:

        - App\Entity\Product:

            class: App\Entity\Product

            list:

                fields:

                    - 'id'

                    - 'name'

                    - 'price'

 

Możesz również dostosować formularze edycji i tworzenia, dodając sekcje `form` i `new` w konfiguracji:

easy_admin:

    entities:

        - App\Entity\Product:

            class: App\Entity\Product

            list:

                fields:

                    - 'id'

                    - 'name'

                    - 'price'

            form:

                fields:

                    - 'name'

                    - 'price'

            new:

                fields:

                    - 'name'

                    - 'price'

Podsumowanie

EasyAdmin to doskonałe narzędzie do szybkiego tworzenia paneli administracyjnych w aplikacjach Symfony. Dzięki niemu możesz zarządzać swoimi danymi za pomocą intuicyjnego interfejsu, oszczędzając czas na rozwój i konfigurację.

Podsumowując, w tym artykule pokazaliśmy, jak:

  • Zainstalować EasyAdmin.
  • Skonfigurować początkowe ustawienia.
  • Stworzyć i zarządzać encjami.
  •  Dostosować panel administracyjny do swoich potrzeb.

Teraz możesz zacząć korzystać z EasyAdmin w swoim projekcie Symfony i dostosowywać go do swoich potrzeb. Powodzenia!

Dodatkowe zasoby

  • https://symfony.com/doc/current/bundles/EasyAdminBundle/index.html
  • https://symfony.com/doc/current/index.html

Jeśli masz pytania lub problemy, nie wahaj się skontaktować z nami lub odwiedzić [forum Symfony](https://symfony.com/community).


 

Napisz!


Napisz już teraz na hello@besmartand.pro, a skontaktujemy się z Tobą niezwłocznie.


BeSmartAnd.Pro sp. z o. o.

Ul. Hoża 86/410, 00-682 Warszawa

NIP: 7831881231

REGON: 525399139