Closed bjverde closed 4 years ago
@helhoso vi que deseja usar o TGrid , abaixo o link da classe principal que tem apenas mais de 3.200 linhas
https://github.com/bjverde/formDin/blob/master/base/classes/webform/TGrid.class.php
Porém sem TElement ele não será muito util https://github.com/bjverde/formDin/blob/master/base/classes/webform/TElement.class.php
A questão é justamente esta.... quero utilizar LIBs que facilitem mas não podem ser grandes e muito menos complicar a manutenção do código
que tal utilizar Angular?
que tal utilizar Angular?
Angular pode ser sim uma opção, porém código deve gerar uma API/REST. Pois o Angular só conversa via JSON.
A questão é justamente esta.... quero utilizar LIBs que facilitem mas não podem ser grandes e muito menos complicar a manutenção do código
Infelizmente para fazer tarefas mais complexas as classes ficaram grandes mesmo. Na imagem abaixo tem um exemplo do Front-End criado com FormDin https://github.com/bjverde/formDin/blob/master/documents/img/screenshot-2018-2-4_APPEV2_01.png
O segundo link mostra o codigo do Front-end https://github.com/bjverde/formDin/blob/master/appexemplo_v2.0/modulos/municipio.php
O terceiro link tem o codigo da DAO para comunicar com o banco, repare que tem o crud completo https://github.com/bjverde/formDin/blob/master/appexemplo_v2.0/dao/MunicipioDAO.class.php
Porém nos dois casos para fazer funcionar a biblioteca fica compelxa
@helhoso vc viu o video do SysGen é algo mais proximo do seu projeto. No momento são 22 classes para gerar o sistema, criando o menu, telas cruds, dao, vo, controllers. Então para que algo fique facil de usar pode ser a classes fiquem grandes pois são diversos cenarios.
https://www.youtube.com/watch?v=J2yWEVwwOZw&t é algo parecido com isso que estou tentando fazer
"Angular pode ser sim uma opção, porém código deve gerar uma API/REST. Pois o Angular só conversa via JSON." Sei nada de API/REST, nem por onde começar.
"Angular pode ser sim uma opção, porém código deve gerar uma API/REST. Pois o Angular só conversa via JSON." Sei nada de API/REST, nem por onde começar.
Vou tentar te explicar muito por cima mesmo sobre o Angular. O Angular é um FrameWork JavaScript feito pelo google que funciona do lado do cliente (navegador). O PHP funciona do lado do servidor gerando o HTML para o navegador. Quando uma pessoa acessa um site/sistema feito em angular recebe html/javascript e css direto. A parte cliente (angular) ser comunida com o servidor via API/REST.
O link abaixo é o vídeo "ANGULAR EM 7 MINUTOS - Tudo Que Você Precisa saber! da DevMedia" https://www.youtube.com/watch?v=YX0y1FMlb8I
O Link abaixo é um exemplo de API/REST com JSON http://api.bitvalor.com/v1/ticker.json
Se desejar fazer um curso de Angular recomendo o curso da Loiane Groner é gratuito e está disponivel na Web. https://www.youtube.com/watch?v=tPOMG0D57S0&list=PLGxZ4Rq3BOBoSRcKWEdQACbUCNWLczg2G
A escolha do BootStrap para o novo Layout no FormDin5 acontece pois com o BootStrap não estou mudando radicalmente o funcionamento do FormDin. A mudança será basicamento no visual. Porém mudar para Angular, Reacat ou VueJs será um mudança muito grande paradima.
https://www.youtube.com/watch?v=J2yWEVwwOZw&t é algo parecido com isso que estou tentando fazer
@helhoso então para que reinventar a roda ?? Vamos unir forçar e trabalhar em algo bem melhor. Como você pode ver o SysGen já está mais avançado que phpFrameWorkClass. Porém muito ainda precisa ser feito tanto no SysGen quanto no FormDin.
No caso dor FormDin já tem um boa documentação https://github.com/bjverde/formDin/wiki
Tem parte de um curso já disponivel no YouTube https://www.youtube.com/watch?v=OCrf_sZ8H58&list=PL296LQLcRfW67riEtAanqvaIiXJX-yMyY
o FormDin é utilizado em varios locais em ambiente de produção. Porém ele não tão famoso quanto outros FrameWork contudo é muito muito facil mesmo usar e criar sistemas.
@ThiGaleno a classe TElement é motor do FormDin é dela que tudo nasce. https://github.com/bjverde/formDin/blob/master/base/classes/webform/TElement.class.php
Desculpe te marquei na isseu errada na primeira vez
@ThiGaleno têrm como você me ajudar? Eu não sei como implementar o código com essa biblioteca
@ThiGaleno a classe TElement é motor do FormDin é dela que tudo nasce. https://github.com/bjverde/formDin/blob/master/base/classes/webform/TElement.class.php
Desculpe te marquei na isseu errada na primeira vez
@helhoso se vc está falando da classe TElement no tem o código dela. Se está falando da TGrid também tem o código no mesmo lugar.
Diga exatamente qual é a sua dúvida e o que deseja.
@helhoso como está seu conhecimento de orientação objeto ??
A Classe TGrid extende TTable que extende de TElement.
Em html para criar um link fazemos
<a href='index.php' class='navbar-brand'>Form Sigla</a>
Para fazer a mesma coisa com TElement criamos uma classe TA https://github.com/bjverde/formDin5/blob/master/base/core/webform/TA.class.php
Depois podemos criar um metodo
public function getNavBrand()
{
$navBrand = new TA();
$navBrand->setClass('navbar-brand');
$navBrand->setAttribute('href','index.php');
$navBrand->add('Form Sigla');
return $navBrand;
}
O resultado irá retornar um Objeto do tipo TA com vários atributos preenchidos. Fazendo $navBrand->show() irá gerar o HTML para o navegador.
Estou tentando desenvolver um framework, trabalho nele um pouco quase todo dia, como posso implementar essa biblioteca para que funcione no código gerado por ele? A finalidade do framework é gerar um código quase finalizado para reduzir o tempo de desenvolvimento. https://github.com/helhoso/phpFrameWorkClass Está desatualizado mas esta semana já descarrego uma atualização. outra coisa, porqUe não podemos falar em uma sala tipo whatsapp ou outra qualquer?
Sistema exemplo 2.5 com FormDin 5.0.0-alpha2 Existem 4 usuários, cada um com um perfil diferete! login: root e senha: root → é o super usuário, que pode criar novas telas com o gerador login: admin e senha: admin → é o super administrador, pode incluir outros usuarios e conceder acesso login: user e senha: user → usario comum pode operar todas as telas login: trainee e senha: trainee → tem acesso apenas uma tela
Sistema exemplo 2.5 com FormDin 5.0.0-alpha2
@helhoso o FormDin 5 está em total processo de construção. Não recomendo usar no momento, só se desejar participar do processo de desenvolvimento. O FormDin 4 está pronto para uso inclusive em ambiente de produção.
https://github.com/bjverde/formDin
Porém para usar aplicação de exemplo 2.0 e 2.5 você precisa rodar os scripts de banco de dados do MySQL https://github.com/bjverde/formDin/tree/master/modelo_banco_exemplos
Rode os scritps na sequencia
Estou tentando desenvolver um framework, trabalho nele um pouco quase todo dia, como posso implementar essa biblioteca para que funcione no código gerado por ele? A finalidade do framework é gerar um código quase finalizado para reduzir o tempo de desenvolvimento.
@helhoso você acabou de descrever o projeto SysGen que utiliza o FrameWork FormDin. A biblioteca que você está tentando usar no seu FrameWork é parte do FormDin.
Por que não unimos forças em volta do FormDin e nos dois trabalhamos para melhorar um só FrameWork. Para seu phpFrameWorkClass chegar proximo das funcoinalidades do FormDin e do SysGen será muito muito trabalho apenas para uma pessoas. Isso sem falar só estará refazendo o que já foi feito.
outra coisa, porqUe não podemos falar em uma sala tipo whatsapp ou outra qualquer?
Confesso que não gosto da ideia de whatsapp ou telegrama para grupos de desenvolvimento. O motivo é para seguir o exemplo do StackOverflow.
Vou te procucurar no grupo do PHP Brasil no Facebook e assim poderemos conversar melhor.
Eu já faço parte do PHP Brasil facebook só precisamos agora é de um horário compativel para nós dois
@helhoso ,
Recomendo que use o link abaixo na ordem abaixo
1 - SysGen - Do Zero até Rodar. Aqui vai direto ao ponto montando tudo que precisa para funcionar o SysGen e o FormDin https://github.com/bjverde/sysgen/wiki/Do-Zero-at%C3%A9-Rodar
2 - Curso do FormDin no YouTube. https://www.youtube.com/watch?v=OCrf_sZ8H58&list=PL296LQLcRfW67riEtAanqvaIiXJX-yMyY
3 - Documentação do FormDin FrameWork https://github.com/bjverde/formDin/wiki
@helhoso
Já via que conseguiu achar o local para ver as configurações do PHP :nerd_face: https://github.com/jetphp/jetphp/issues/15#issuecomment-542797813
Sobre a versão do PHP recomendo usar sempre a versão mais recente do PHP no caso é a versão 7.4 https://github.com/jetphp/jetphp/issues/15#issuecomment-542797813
No windows eu não uso XAMPP, devida minha necessidade costumo usar o WAMP pois é mais facil anternar entre as versões do PHP. Procurando no Google para alterar a versão do PHP no XAMPP o melhor é remover e instalar novamente. Fonte: https://pt.stackoverflow.com/questions/93618/como-posso-setar-uma-vers%C3%A3o-antiga-do-php-no-xampp-em-localhost/93648
Se desejar usar o WAMPP o vídeo 3 do curso de FormDin mostra como alterar a versão https://www.youtube.com/watch?v=fupmd0W1wtE&list=PL296LQLcRfW67riEtAanqvaIiXJX-yMyY&index=4
Bom dia! Seguindo as orientações consegui instalar o FormDin e o Sysgen A primeira inconsistencia que encontrei foram as tabelas do MySQL sendo exibidas junto com as tabelas dos usuarios. Vou ver o código e procurar uma solução, caso eu a encontre volto aqui.
Após criar meu projeto este erro foi apresentado Constatei que o FormDin não criou a pasta base\tmp quando foi isntalado
Resolvi com a inclusão das linhas 1310,1311 e 1312
Mais um detalhe...
Quando selecionei apenas uma tabela
Estou a procura de um parceiro para desenvolver o FormDin Alguem se habilita????? Preciso de uma pessoa que tenha disponibilidade de trocar ideias diretamente como se estivesse trabalhando lado-a-lado via whatsapp ou gmail.
Após criar meu projeto este erro foi apresentado Constatei que o FormDin não criou a pasta base\tmp quando foi isntalado
Resolvi com a inclusão das linhas 1310,1311 e 1312
@helhoso que legal !!!! Obrigado mesmo pela correção.
O que você acha de colocar o SEU NOME como o responsavel pela correção desse bug ?? Se aceitar esse desafio seu problema deixa de ser do PHP e/ou FormDin e será de Git. Para isso recomendo fazer um Pull Request.
O Tutorial mostrar como fazer um Pull Request passo a passo. https://www.digitalocean.com/community/tutorials/como-criar-um-pull-request-no-github-pt
Já criei um isseu para o problema https://github.com/bjverde/formDin/issues/195
Bom dia! Seguindo as orientações consegui instalar o FormDin e o Sysgen A primeira inconsistencia que encontrei foram as tabelas do MySQL sendo exibidas junto com as tabelas dos usuarios. Vou ver o código e procurar uma solução, caso eu a encontre volto aqui.
Humm... interessante não tinha visto esse problema ! Você pode detalhar mais ??
1 - Qual versão do MySql ? 2 - Tem o Script de criação do Banco de dados ? 3 - Quais os parametros informados no MySql ?
Passei o dia ontem atualizando
são as versões mais recentes
está rodando no xampp
Após criar meu projeto este erro foi apresentado Constatei que o FormDin não criou a pasta base\tmp quando foi isntalado Resolvi com a inclusão das linhas 1310,1311 e 1312
@helhoso que legal !!!! Obrigado mesmo pela correção.
O que você acha de colocar o SEU NOME como o responsavel pela correção desse bug ?? Se aceitar esse desafio seu problema deixa de ser do PHP e/ou FormDin e será de Git. Para isso recomendo fazer um Pull Request.
O Tutorial mostrar como fazer um Pull Request passo a passo. https://www.digitalocean.com/community/tutorials/como-criar-um-pull-request-no-github-pt
Já criei um isseu para o problema
195
Blz mas eu tô apanhando até pra chegar aqui neste forum toda vez que acesso o git fico perdido sem saber como encontrar as coisas
Blz mas eu tô apanhando até pra chegar aqui neste forum toda vez que acesso o git fico perdido sem saber como encontrar as coisas
Calma no inicio é assim porém depois de um tempo tudo vai melhorar :smiley:
Após criar meu projeto este erro foi apresentado Constatei que o FormDin não criou a pasta base\tmp quando foi isntalado Resolvi com a inclusão das linhas 1310,1311 e 1312
@helhoso que legal !!!! Obrigado mesmo pela correção.
O que você acha de colocar o SEU NOME como o responsavel pela correção desse bug ?? Se aceitar esse desafio seu problema deixa de ser do PHP e/ou FormDin e será de Git. Para isso recomendo fazer um Pull Request.
O Tutorial mostrar como fazer um Pull Request passo a passo. https://www.digitalocean.com/community/tutorials/como-criar-um-pull-request-no-github-pt
Já criei um isseu para o problema
195
Gostei! Ele funciona parecido com SVN Vou procurar o instalado para Win e baixar
O que danado é 'isseu ' ? traduz por favor
Duvida Quando fui instalar o Git, quase no final ele mensionou o TortoiseSVN, só que eu já tenho instalado. Como fica minha instalação anterior? Vai modificar?
O que danado é 'isseu ' ? traduz por favor
Isseu é mesmo que questão, dúvida, ticket de serviço. É o termo usado pelo Git para lista os problemas e dúvidas.
Duvida Quando fui instalar o Git, quase no final ele mensionou o TortoiseSVN, só que eu já tenho instalado.
@helhoso essa vou ficar te devendo. Pois eu uso o git via linha de comando seja no Windows ou Linix. O mais próximo de interface gráfica é a intenção com Visual Studio Code ou Eclipse PDT
Duvida Quando fui instalar o Git, quase no final ele mensionou o TortoiseSVN, só que eu já tenho instalado.
@helhoso essa vou ficar te devendo. Pois eu uso o git via linha de comando seja no Windows ou Linix. O mais próximo de interface gráfica é a intenção com Visual Studio Code ou Eclipse PDT
tá de boa instalei o Git e o Tortoise continuou funcionando agora é só ver como faço para que minhas alterações possam subir publicadas no repositorio do github. Não faço ideia
Bom dia! Sabe me falar qual classe cria esta parte:
Troca essa mensagem const GEN02_NOT_READY = 'Seu Mané teste as configurações de banco!!'; se deseja que a aplicação seja mais profissional
Troca essa mensagem const GEN02_NOT_READY = 'Seu Mané teste as configurações de banco!!'; se deseja que a aplicação seja mais profissional
@helhoso desculpe a demora tive alguns problemas. Você razão preciso melhorar a mensagem. Cadastrei a isseu https://github.com/bjverde/sysgen/issues/104 no SysGen
O que você acha de colocar o SEU NOME como o responsavel pela correção desse bug ?? é o esquema de fazer Pull Request
O Tutorial mostrar como fazer um Pull Request passo a passo. https://www.digitalocean.com/community/tutorials/como-criar-um-pull-request-no-github-pt
Bom dia! Sabe me falar qual classe cria esta parte:
@helhoso são várias classes envolvidas para criar essa tela, cada classe é responsavel por uma parte.
Sabe me falar qual classe cria esta parte:
@helhoso são várias classes envolvidas para criar essa tela, cada classe é responsável por uma parte.
Complementando a resposta anterior.
No MySQL a lista de tabelas é gerada TDAO::loadTablesFromDatabase dentro do FormDin na linha 1.441 https://github.com/bjverde/formDin/blob/master/base/classes/webform/TDAO.class.php#L1441
destaco a linha 1.462 e 1.483
and t.TABLE_SCHEMA not in ('sys','performance_schema','mysql','information_schema')
Mesmo após eu ter feito as alterações continuam vindo as tabelas do sistema
Seguencia Primeira Tela
Segunda Tela - já vem com phpmyadmin (schema)
Interessante.... Após tere feito as alterações no browser aparecem as tabelas, copiei o select e rodei direto no banco, para minha surpresa as tabelas do sistema não vieram.... e agora ???
Interessante.... Após tere feito as alterações no browser aparecem as tabelas, copiei o select e rodei direto no banco, para minha surpresa as tabelas do sistema não vieram.... e agora ???
Achei as suas modificações
Considerando o que falou
eu to fazendo as alterações direto lá, sei que não é o correto, mas enquanto elas forem pequenas, e o github têm um controle disso que eu vi. fiz as alterações mas no browser ainda vem as tabelas do sistema só que eu rodei o select no banco e (vixi) não vieram as tabelas.... e agora?
O acho que aconteceu foi que você fez as modifições na branch patch-1 de cada projeto no repositorio remoto. Porém essas alterações não estão no seu computador. O que deve fazer é:
git checkout patch-1
para trocar para a branch patch-1git pull
para atualizar o repositorio local com as informações do repositorio remoto.git checkout patch-1
para trocar para a branch patch-1git pull
para atualizar o repositorio local com as informações do repositorio remoto.Nesse ponto você corrigiu o problema no seu computador ! Recomendo editar o código sempre local.
Agora deverá fazer um Pull Request para que as suas modificações entrem no projeto. :smiley:
O Tutorial mostrar como fazer um Pull Request passo a passo. https://www.digitalocean.com/community/tutorials/como-criar-um-pull-request-no-github-pt
Se precisar saber sobre Git na Wiki do FormDin tem links para o livro oficial e gratuito e videos aulas. https://github.com/bjverde/formDin/wiki/Baixando-o-formDin#clonando
Lista de FrameWork em pt-br semelhantes do FormDin, todos foram encontrados no grupo PHP-Brasil do Facebook
Constatei que o FormDin não criou a pasta base\tmp quando foi isntalado
Resolvi com a inclusão das linhas 1310,1311 e 1312
@helhoso você pode por favor commitar a sua alteração e fazer um pull request ! Obrigado.
Resolvi com a inclusão das linhas 1310,1311 e 1312
@helhoso já commitei sua correção na branch nextversion ! Obrigado pela dica sua ajuda conta :smile:
Versão originam
https://github.com/jetphp/jetphp/issues/15
Vou escrever em PT-BR mesmo.
@JoaoArtur , @gilglecio , @cassiogiehl
Primeiro, parabéns pelo trabalho de vocês. Estou vendo que estão trabalhando firme no jetphp.
A minha proposta é unir forças para desenvolver um FrameWork PHP para construção de sistemas. Algo que seja de fácil uso, produtivo e com diversos componentes prontos para o uso. Sem engessar o desenvolvedor, possibilitando a criação e compartilhamento de novos componentes.
Os navegadores só entendem HTML, CSS e JavaScript. A cada dia a demanda por sistemas Web só cresce, obrigando o desenvolvedor saber uma quantidade cada vez maior de linguagens e tecnologia. Tomando muito tempo e esforço repetitivo, isso sem falar que a cada 5 segundos aparece um FrameWork JavaScript.
A união dos esforço irá gerar um FrameWork melhor. Possibilitando ao desenvolvedor com pouco conhecimento e/ou tempo entregar um sistema com grandes funcionalidades.
Vi que um de vocês está falando de melhores praticas com PSR1, além disso muito ainda deve ser feito. Exemplo de algumas perguntas
São 3 FrameWorks fazendo + ou - as mesmas coisas, gastando tempo e esforço. Vamos nos unir e fazer algo algo melhor.
Minha ideia é fazer tudo baseado no motor do Element HTML.
O jetphp parece que não utiliza esse conceito. Porém o FormDin e o Easyform já estão utilizando.
O uso desse motor com OO, possibilitar com facilidade deixar diversos componentes prontos o uso com pouco esforço.
Exemplo do código para criar um grid simples
Obs: 1 - Acho que foi com o João que conversei algumas vezes no grupo do PHPBrasil do Faceboook.
2 - Ainda não mandei Richard Lopes do EasyForm
3 - Atualmente o FormDin tem um gerador de código. Ele lê o banco de dados e gera a primeira versão do sistema com base no banco em minutos.