Jak utworzyć własny vendor dla Symfony PHP
Symfony, jako jeden z najpopularniejszych frameworków PHP, oferuje wyjątkową elastyczność i m...
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.
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
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`.
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
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'
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:
Teraz możesz zacząć korzystać z EasyAdmin w swoim projekcie Symfony i dostosowywać go do swoich potrzeb. Powodzenia!
Jeśli masz pytania lub problemy, nie wahaj się skontaktować z nami lub odwiedzić [forum Symfony](https://symfony.com/community).