FT
Como deixar mestre detalhe gerado pelo studio responsivo?
Olá pessoal. Gerei um form tipo mestre detalhe no studio. No formulário, em uma mesma linha estou tentando colocar dois campos para preenchimento da maneira abaixo, porém ele não fica responsivo da mesma forma como quando usamos addfield
$table_general->addRowSet( new TLabel('Matricula Aluno'), $matricula_aluno, new TLabel('Email Aluno'), $email_aluno );
O uso do addField nesse caso da vários erros e não estou conseguindo implementar. Alguém pode me dar uma ajuda?
$table_general->addRowSet( new TLabel('Matricula Aluno'), $matricula_aluno, new TLabel('Email Aluno'), $email_aluno );
O uso do addField nesse caso da vários erros e não estou conseguindo implementar. Alguém pode me dar uma ajuda?
Aqui está o print para melhor visualização do que está ocorrendo: https://prnt.sc/hvh8jh
Acompanhando este tópico.
Sugiro usar o BootstrapFormBuilder. Para separar o detail do master você pode usar labels, conforme exemplo abaixo:
adianti.com.br/framework_files/tutor/index.php?class=FormBuilderView
Obrigado Nataniel, estou usando, porém apesar dos campos estarem responsivos, quando a tela é reduzida os campos não ficam listados um em cima do outro.. eles continuam ficando um do lado do outro (creio que é por causa do addRowSet) - além disso está dando o erro Warning: Invalid argument supplied for foreach() in C:xampphtdocsatendimentolibadiantiwrapperBootstrapFormBuilder.php on line 478
aqui está o código: https://pastebin.com/9LPMXuKj
e um print: https://prnt.sc/hwd7zg
creio que o addfield seria o melhor, por ser responsivo, no entanto dá vários erros, penso que ele é incompatível com alguma parte do mestre detalhe gerado no estúdio.
AC
Felipe, você está usando a BootstrapFormBuilder, mas adicionando uma tabela dentro dela, o que acaba "limitando" o controle da classe sobre os campos e com isso também sobre a responsividade. Use a função addFields(não confundir com addField):
Nataniel, muitíssimo obrigado pela rapidez em mostrar onde eu estava errado. Agora vai dar certo!!!!
Deu super certo o mestre detalhe! apenas um detalhe que não estou conseguindo entender, ao criar vários 'itens' no detalhe, ele salva apenas o último item - na hora de editar ele traz apenas o último item inserido anteriormente. Seria possível ver o motivo pelo código? https://pastebin.com/BfVAYWe6
Qual coluna é chave primária do model Mensagem?
é id_mensagem .. é a chave primaria da tabela mensagem.
mesmo gerando o codigo pelo estudio, tenho o mesmo problema, devo estar fazendo alguma confusão na hora do banco.
Tenho duas tabelas, a solicitacaoaluno (mestre) e a mensagem (detalhe). Ao gerar pelo estudio, no "campo de ligação" eu coloco id_mensagem. Fiz a associação da solicitacaoaluno e da mensagem na model, mas o problema persiste.
tanto a solicitacaoaluno quanto a mensagem ele está salvando corretamente no banco, o problema está apenas para mostrar na página do mestre detalhe.
O campo de ligação deve ser o campo da tabela detalhe que faz a ligação com o mestre. Seguindo o padrão seria solicitacaoaluno_id:
Se a coluna id_mensagem é chave primária, ela não pode repetir. Veja que está repetindo para todos os detalhes, pois está pegando o id do mestre.
Muito obrigado Nataniel, era esse mesmo o problema, agora consegui entender como funciona.
Descobri um probleminha no meu código que, depois que o usuário salva, se ele atualizar a página outro registro é gerado. Deve ser alguma coisa com a id do mestre, vou quebrar a cabeça aqui ;)