JF
Apresentar informação associada no detail
Fechado
Duvida Formulário Mestre/Detalhe
Possuo uma base de dados com tabelas pessoa, pessoaDetalhe e Detalhe. Criei as classes Pessoa, PessoaDetalhe e Detalhe e um formulário Mestre/Detalhe onde a classe Modelo mestre é a classe Pessoa e a detalhe é PessoaDetalhe.
Bom... Sou novo no Framework e POO e não entendi em 100% o código do formulário, e (como mostra a figura em anexo) gostaria de substituir a coluna iddetalhe pela descrição do detalhe. Acho que a solução está na linha que mostro abaixo, mas ainda não consegui. Alguém poderia me ajudar???
<php
{...}
// items
$this->detail_list->addQuickColumn('Iddetalhe', 'iddetalhe', 'left', 100);
// já experimeintei ('Iddetalhe', 'detalhe', 'left', 100)
// ('Iddetalhe', 'detalhe->detalhe', 'left', 100)
$this->detail_list->addQuickColumn('Pessoadetalhe', 'pessoadetalhe', 'left', 200);
$this->detail_list->createModel();
$row = $table_detail->addRow();
$row->addCell($this->detail_list);
{...}
?>
Possuo uma base de dados com tabelas pessoa, pessoaDetalhe e Detalhe. Criei as classes Pessoa, PessoaDetalhe e Detalhe e um formulário Mestre/Detalhe onde a classe Modelo mestre é a classe Pessoa e a detalhe é PessoaDetalhe.
Bom... Sou novo no Framework e POO e não entendi em 100% o código do formulário, e (como mostra a figura em anexo) gostaria de substituir a coluna iddetalhe pela descrição do detalhe. Acho que a solução está na linha que mostro abaixo, mas ainda não consegui. Alguém poderia me ajudar???
<php
{...}
// items
$this->detail_list->addQuickColumn('Iddetalhe', 'iddetalhe', 'left', 100);
// já experimeintei ('Iddetalhe', 'detalhe', 'left', 100)
// ('Iddetalhe', 'detalhe->detalhe', 'left', 100)
$this->detail_list->addQuickColumn('Pessoadetalhe', 'pessoadetalhe', 'left', 200);
$this->detail_list->createModel();
$row = $table_detail->addRow();
$row->addCell($this->detail_list);
{...}
?>
Dê uma olhadinha nos métodos onSaveDetail(), onReload() e onEdit().
onSaveDetail() salva em sessão os registros até o registro mestre ser gravado.
onReload() é executado pelo método show() assim que a página é carregada.
onEdit() carrega o formulário com os dados a serem editados.
Você precisa alterar o registro antes de apresentar em tela.
Para buscar o nome deve-se utilizar o lazy load, Ex. no model Veiculo.class.php tenho o seguinte
Espero que tenha ficado claro.
Só uma correção,
Cara, é muito bom e fácil. Valeu a dica!!
Muito obrigado João Renato, bombou!!!!