Combo não exibe no me do Estado
16/12/2014
0
Olá. Através do bake, criei um formulário para incluir um Município. Entretanto, o bake ao gerar o formulário, exibe o id do estado e não o nome dele. Como faço para que na como apareça o nome e não o id do Estado? Se possível, gostaria de alterar a label de Uf para Estado e de nom municipio para município.
Script para a criação das tabelas Ufs e Municipios:
Tela exibida:
<div class="municipios form"> <?php echo $this->Form->create('Município'); ?> <fieldset> <legend><?php echo __('Incluir Município'); ?></legend> <?php echo $this->Form->input('uf_id'); echo $this->Form->input('nom_municipio'); ?> </fieldset> <?php echo $this->Form->end(__('Enviar')); ?> </div>
Script para a criação das tabelas Ufs e Municipios:
DROP TABLE IF EXISTS `ufs`; CREATE TABLE IF NOT EXISTS `ufs` ( `id` int(10) unsigned NOT NULL COMMENT 'codigo fornecido pelo IBFE', `nom_estado` varchar(40) DEFAULT NULL COMMENT 'nome do estado', `sigla` varchar(2) DEFAULT NULL COMMENT 'sigla do estado' ) ENGINE=InnoDB DEFAULT CHARSET=utf8 PACK_KEYS=0; DROP TABLE IF EXISTS `municipios`; CREATE TABLE IF NOT EXISTS `municipios` ( `id` varchar(7) NOT NULL COMMENT 'codigo do municipio fornecido pelo IBGE', `uf_id` int(10) unsigned NOT NULL, `nom_municipio` varchar(50) NOT NULL COMMENT 'nome do municipio' ) ENGINE=InnoDB DEFAULT CHARSET=utf8 PACK_KEYS=0;
Tela exibida:
Sergio Rocha
Curtir tópico
+ 0
Responder
Posts
26/12/2014
Sergio Rocha
Resposta enviada por Paulo Rodrigues - BH/MG
O nome do label você pode incluir no segundo parâmetro, assim:
echo $this->Form->input('uf_id', array('label' => 'Estado'));
echo $this->Form->input('nom_municipio', array('label' => 'Município'));
E para o nome do estado, no seu model Uf é possível definir o atributo displayField que é o seu campo de exibição padrão:
class Uf extends AppModel {
public $displayField = 'nom_estado';
}
O nome do label você pode incluir no segundo parâmetro, assim:
echo $this->Form->input('uf_id', array('label' => 'Estado'));
echo $this->Form->input('nom_municipio', array('label' => 'Município'));
E para o nome do estado, no seu model Uf é possível definir o atributo displayField que é o seu campo de exibição padrão:
class Uf extends AppModel {
public $displayField = 'nom_estado';
}
Responder
Clique aqui para fazer login e interagir na Comunidade :)