KISS - Keep it simple, stupid!

CamposEnumBehavior, campos ENUM de maneira fácil

postado por João José Pedrini em 18/11/2008 01:28:02

Acabo de criar um Behavior para manipular campos ENUM de banco de dados MySQL. Tinha visto o código de capturar os valores do ENUM no Bakery porém não fiquei muito satisfeito com o método dentro da classe AppModel. Portanto, criei um Behavior que facilitou bastante minha vida.

Primeiramente, a extensão se encontra hospedado no Github no meu projeto Pedaços de CakePHP. Em seguida, explico como faz para configurar:

No seu Model:

var $actsAs = array (
    'CamposEnum' => array (
        'campos' => array (
             'campo_1','campo_2'
        )
    )
);

No seu Controller:

function beforeRender(){
    $listas = $this->Model->listas();
    $this->set(array_keys($listas),$listas);
}

Voalá, agora todos os seus campos ENUM serão exibidos como SELECT’s. Tomem bastante cuidado com o encoding de suas aplicações e banco de dados, tive alguns problemas nesta questão.

Tags: , , ,
Topo

2 Comentários

Creative Commons License
Sou Ágil: KISS em http://kiss.souagil.com.br está licenciado sobre
Creative Commons Attribution-Share Alike 2.5 Brazil License.

souÁgil