soluciones-ypunto / cake-enum
Librería básica para implementar enums en CakePHP
Installs: 142
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 3
Forks: 0
Open Issues: 0
Type:cakephp-plugin
Requires
- cakephp/cakephp: ^3.5
Requires (Dev)
- phpunit/phpunit: ^5.7.14|^6.0
This package is auto-updated.
Last update: 2024-12-23 09:17:31 UTC
README
Installation
You can install this plugin into your CakePHP application using composer.
The recommended way to install composer packages is:
composer require soluciones-ypunto/cake-enum
Usage
Define your enum lists as follow:
// file Model/Enum/SomeList.php namespace App\Model\Enum; use Ypunto\EnumType\Enum\Enum; class SomeList extends Enum { const VALUE_1 = 1; const VALUE_2 = 2; const SOME_VALUE = 'any-val'; /** * @return string[] */ public static function getOptions() { return [ self::VALUE_1 => __('First'), self::VALUE_2 => __('Second'), self::SOME_VALUE => __('Some Value'), ]; } }
Then use them in forms, to display values or to compare then, without using plain strings.
// in templates // to create select controls echo $this->Form->control('value', ['options' => \App\Model\Enum\SomeList::getOptions()]); // to display echo \App\Model\Enum\SomeList::getOption($entity->value); // to compare if ($entity->value === \App\Model\Enum\SomeList::VALUE_1) { // do something }