Laravel Opcje firmy Spatie to pakiet do tworzenia list opcji z różnych źródeł:
Typowa aplikacja internetowa zawsze ma wiele wybranych pól z opcjami. Ten pakiet ułatwia przekształcanie wyliczeń, modeli, stanów i tablic w ujednoliconą strukturę opcji.
Przykład z pliku readme ilustruje, jak ten pakiet może ułatwić pracę z wybranymi opcjami w aplikacjach Laravel. Biorąc pod uwagę wyliczenie, możesz użyć tego pakietu do zbudowania opcji:
enum Hobbit: string
{
case Frodo = 'frodo';
case Sam = 'sam';
case Merry = 'merry';
case Pippin = 'pippin';
}
Options::forEnum(Hobbit::class)->toArray();
/* returns the following array
[
['label' => 'Frodo', 'value' => 'frodo'],
['label' => 'Sam', 'value' => 'sam'],
['label' => 'Merry', 'value' => 'merry'],
['label' => 'Pippin', 'value' => 'pippin'],
]
*/
// Or return JSON
Options::forEnum(Hobbit::class)->toJson();
Nie tylko możesz używać wyliczeń, ale ten pakiet obsługuje również dane z różnych źródeł, w tym: p>
- Models
- Model States (via Spatie Model States)
- Arrays
- Manually
Kolejną ciekawą funkcją jest to, że możesz zmienić swoje opcje w regułę weryfikacji:
$request->validate([
// ['in:frodo,sam,merry,pippin']
'hobbit' => Options::forEnum(Hobbit::class)->toValidationRule()
]);
Możesz dowiedzieć się więcej o tym pakiecie, uzyskać pełne instrukcje instalacji i wyświetlić kod źródłowy na GitHub. Przeczytaj także Przedstawiamy nasz nowy pakiet Laravel Options autorstwa Freeka Van der Hertena, aby uzyskać tło i szczegóły dotyczące tego pakietu.