tauser 0 Denunciar post Postado Junho 30, 2010 Olá pessoal tudo bem, sou iniciante com o cakephp , e estou com o seguinte problema: Tenho um cadastro pra fazer, esse cadastro é constintuido de 3 mvc que são : detentos detentos_dados_fisicos detentos_dados_pessoais a minha ideia era no cadastro mostrar os 3 formularios em uma unica view por meio de abas. como mostrar as 3 forms por meio de abas como salvar os tres ao mesmo tempo. lembrando que para salvar a 2 e 3 vview a primeira precisa ser cadastrada. Se alguem poder me ajudar. agradeceria muito Obrigado a todos Compartilhar este post Link para o post Compartilhar em outros sites
Kleydismar 0 Denunciar post Postado Junho 30, 2010 caro tauser, esse site vai te ajudar muito cara da uma olhada http://book.cakephp.org/pt/. ^_^ Compartilhar este post Link para o post Compartilhar em outros sites
tauser 0 Denunciar post Postado Junho 30, 2010 Kleydimar beleza ? Cara eu ja dei uma olhada e não consegui encontrar o que eu estou precisando Compartilhar este post Link para o post Compartilhar em outros sites
Kleydismar 0 Denunciar post Postado Junho 30, 2010 manda ai o q você ja tem no controller e na view?? Compartilhar este post Link para o post Compartilhar em outros sites
tauser 0 Denunciar post Postado Junho 30, 2010 Detento Controller <?php class DetentosController extends AppController { var $name = 'Detentos'; function index() { $this->Detento->recursive = 0; $this->set('detentos', $this->paginate()); } function view($id = null) { if (!$id) { $this->Session->setFlash(__('Invalid detento', true)); $this->redirect(array('action' => 'index')); } $this->set('detento', $this->Detento->read(null, $id)); } function add() { if (!empty($this->data)) { $this->Detento->create(); if ($this->Detento->save($this->data)) { $this->Session->setFlash(__('The detento has been saved', true)); $this->redirect(array('action' => 'index')); } else { $this->Session->setFlash(__('The detento could not be saved. Please, try again.', true)); } } $unidadesPrisionais = $this->Detento->UnidadesPrisional->find('list'); $kitsVivencias = $this->Detento->KitsVivencia->find('list'); $fluxosFinanceirosDetentos = $this->Detento->FluxosFinanceirosDetento->find('list'); $solicitacoesAcessosVisitantesDetentos = $this->Detento->SolicitacoesAcessosVisitantesDetento->find('list'); $acessosVisitantesDetentos = $this->Detento->AcessosVisitantesDetento->find('list'); $comprasDetentos = $this->Detento->ComprasDetento->find('list'); $condutasDetentosUnidades = $this->Detento->CondutasDetentosUnidade->find('list'); $detentosDatiloscopias = $this->Detento->DetentosDatiloscopia->find('list'); $entradasSaidasDetentos = $this->Detento->EntradasSaidasDetento->find('list'); $fluxosPagamentosDetentos = $this->Detento->FluxosPagamentosDetento->find('list'); $detentosDadosFisicos = $this->Detento->DetentosDadosFisico->find('list'); $detentosDadosPessoais = $this->Detento->DetentosDadosPessoal->find('list'); $this->set(compact('unidadesPrisionais', 'kitsVivencias', 'fluxosFinanceirosDetentos', 'solicitacoesAcessosVisitantesDetentos', 'acessosVisitantesDetentos', 'comprasDetentos', 'condutasDetentosUnidades', 'detentosDatiloscopias', 'entradasSaidasDetentos', 'fluxosPagamentosDetentos', 'detentosDadosFisicos', 'detentosDadosPessoais')); } function edit($id = null) { if (!$id && empty($this->data)) { $this->Session->setFlash(__('Invalid detento', true)); $this->redirect(array('action' => 'index')); } if (!empty($this->data)) { if ($this->Detento->save($this->data)) { $this->Session->setFlash(__('The detento has been saved', true)); $this->redirect(array('action' => 'index')); } else { $this->Session->setFlash(__('The detento could not be saved. Please, try again.', true)); } } if (empty($this->data)) { $this->data = $this->Detento->read(null, $id); } $unidadesPrisionais = $this->Detento->UnidadesPrisional->find('list'); $kitsVivencias = $this->Detento->KitsVivencia->find('list'); $fluxosFinanceirosDetentos = $this->Detento->FluxosFinanceirosDetento->find('list'); $solicitacoesAcessosVisitantesDetentos = $this->Detento->SolicitacoesAcessosVisitantesDetento->find('list'); $acessosVisitantesDetentos = $this->Detento->AcessosVisitantesDetento->find('list'); $comprasDetentos = $this->Detento->ComprasDetento->find('list'); $condutasDetentosUnidades = $this->Detento->CondutasDetentosUnidade->find('list'); $detentosDatiloscopias = $this->Detento->DetentosDatiloscopia->find('list'); $entradasSaidasDetentos = $this->Detento->EntradasSaidasDetento->find('list'); $fluxosPagamentosDetentos = $this->Detento->FluxosPagamentosDetento->find('list'); $detentosDadosFisicos = $this->Detento->DetentosDadosFisico->find('list'); $detentosDadosPessoais = $this->Detento->DetentosDadosPessoal->find('list'); $this->set(compact('unidadesPrisionais', 'kitsVivencias', 'fluxosFinanceirosDetentos', 'solicitacoesAcessosVisitantesDetentos', 'acessosVisitantesDetentos', 'comprasDetentos', 'condutasDetentosUnidades', 'detentosDatiloscopias', 'entradasSaidasDetentos', 'fluxosPagamentosDetentos', 'detentosDadosFisicos', 'detentosDadosPessoais')); } function delete($id = null) { if (!$id) { $this->Session->setFlash(__('Invalid id for detento', true)); $this->redirect(array('action'=>'index')); } if ($this->Detento->delete($id)) { $this->Session->setFlash(__('Detento deleted', true)); $this->redirect(array('action'=>'index')); } $this->Session->setFlash(__('Detento was not deleted', true)); $this->redirect(array('action' => 'index')); } } ?> View Detento <div id="tit-page"><?php __('Detentos');?></div> <div class="detentos form"> <div id="tabnav"> <div id="tabs"> <a href="#" onclick="opentab(1);"><strong>Dados Cadastrais</strong></a> <a href="#" onclick="opentab(2);"><strong>Dados Pessoais</strong></a> <a href="#" onclick="opentab(3);"><strong>Dados Físicos</strong></a> <a href="#" onclick="opentab(4);"><strong>Fotos</strong></a> <a href="#" onclick="opentab(5);"><strong>Datiloscopia</strong></a> </div> <div id="contenttabs"> <!-- DIV 1 --> <div id="detento"> <?php echo $this->Form->create('Detento');?> <?php //echo $this->Form->hidden('id'); echo $this->Form->input('nome',array('label' => 'Nome:')); echo $this->Form->input('alcunha',array('label' => 'Alcunha:')); echo $this->Form->input('oriundo',array('label' => 'Oriundo:')); echo $this->Form->input('obs',array('label' => 'Observação:')); echo $this->Form->input('situacao',array('label' => 'Situação:')); echo $this->Form->input('kits_vivencia_id'); ?> <?php echo $this->Form->end(__('Salvar', true));?> </div> <!-- DIV 2 --> <div id="detento"> <?php echo $this->Form->create('DetentosDadosPessoal');?> <?php echo $this->Form->input('rg',array('label' => 'RG:')); echo $this->Form->input('cpf',array('label' => 'CPF:')); echo $this->Form->input('endereco',array('label' => 'Endereço:')); echo $this->Form->input('bairro',array('label' => 'Bairro:')); echo $this->Form->input('cidade_id',array('label' => 'Cidade:')); echo $this->Form->input('cep',array('label' => 'CEP:')); echo $this->Form->input('estado_id',array('label' => 'Estado:')); echo $this->Form->input('sexo',array('label' => 'Sexo:')); echo $this->Form->input('nascimento',array('label' => 'Nascimento:')); echo $this->Form->input('naturalidade',array('label' => 'naturalidade:')); echo $this->Form->input('nacionalidade',array('label' => 'Nascionalidade:')); echo $this->Form->input('pais',array('label' => 'Pais:')); echo $this->Form->input('nome_pai',array('label' => 'Pai:')); echo $this->Form->input('nome_mae',array('label' => 'Mãe:')); echo $this->Form->input('escolaridade',array('label' => 'Escolaridade:')); echo $this->Form->input('telefone',array('label' => 'Telefone:')); echo $this->Form->input('religiao',array('label' => 'Religião:')); echo $this->Form->input('estado_civil',array('label' => 'Estado Civil:')); echo $this->Form->input('nome_conjuge',array('label' => 'Conjuge:')); echo $this->Form->input('pertence_detento_foto',array('type'=>'file'),array('label'=>'Foto Pertences')); echo $this->Form->input('pertence_detento_descricao',array('label' => 'Pertences:')); echo $this->Form->input('foto_perfil',array('type'=>'file'),array('label'=>'Foto Perfils')); ?> <?php echo $this->Form->end(__('Gravar', true));?> </div> <!-- DIV 2 --> </div><!--fecha div content--> </div><!--fecha div nav--> </div> <div class="actions"> <ul> <li><?php echo $this->Html->link(__('Listar Detentos', true), array('action' => 'index'));?></li> </ul> </div> Falta mais um form , e outros dois controlers Compartilhar este post Link para o post Compartilhar em outros sites
lucaswxp 22 Denunciar post Postado Julho 1, 2010 http://book.cakephp.org/view/75/Saving-Your-Data De uma procurado pelo método Model::saveAll() Lembre-se que para isso der certo, TODOS os dados devem estar num mesmo form. Compartilhar este post Link para o post Compartilhar em outros sites
karl-el 0 Denunciar post Postado Julho 6, 2010 create table funcionarios(id serial primary key,nome varchar(255) not null);create table dependentes(id serial primary key,nome varchar(255) not null,funcionario_id integer references fucionarios(id));#o controladorclass FuncionariosController extends AppController{ public function salvar(){ if(!empty($data)){ $this->Funcionario->create($data); $this->Funcionario->saveAll($data); } }}#view salvare($form->create("Funcionario",array("action"=>"salvar")));e($form->input("Funcionario.nome"));e($form->input("Dependente.nome"));e($form->end("salvar"));Se eu não estou enganado, assim os dados do funcionario e do(s) dependente(s) dele, se existir(em), são salvos ao mesmo tempo.Outra coisa: já que você vai escrever muitos controladores e modelos dê uma olhada nesse link http://forum.imasters.com.br/index.php?/topic/398402-cake-sem-redundancia-de-codigo/ Compartilhar este post Link para o post Compartilhar em outros sites