Construir aplicativo no modelo SPA(single page app)

51 views
Skip to first unread message

Márcio Almeida

unread,
Sep 11, 2015, 6:16:35 PM9/11/15
to web2py-users-brazil
Pessoal estou tentando criar uma forma de aplicativo tipo SPA para não recarregar tudo sempre que mudar de página, até peguei um exemplo no web2py slices mas
lá só carrega a pagina index e as outras fiquei sem saber como carregar (http://www.web2pyslices.com/slice/show/2030/creating-a-single-page-app-with-web2py).
Alguém já teve alguma experiência com isso ou saberia como evoluir o exemplo do web2pyslices?
Alguma solução no web2py?
Acho que alguns vão me falar sobre o angularjs, tudo bem com ele dá, mas não queria misturar as coisas, nativo web2py será que tem alguma saída?

Valeu povo.

Carlos Costa

unread,
Sep 17, 2015, 8:06:10 AM9/17/15
to web2py-us...@googlegroups.com
Divida sua view em componentes.
Cada componente pode ser atualizado independentemente.
Cada componente precisa ter pelo menos uma action correspondente e opcionalmente uma view com a extensão .load (sem extend 'layout.html').

você pode usar a função LOAD na view para carregar incialmente seus componentes

E em algum momento pode precisar carregar algum componente programaticamente, então pode usar a função js ajax do web2py. No caso de precisar enviar um form

Ou genericamente com a função web2py_component que não é exatamente documentada.



--
Você recebeu essa mensagem por estar inscrito no grupo web2py-users-brazil.
Para enviar uma mensagem ao grupo, envie email a: web2py-us...@googlegroups.com
Para se desinscrever, envie email a: web2py-users-br...@googlegroups.com
Para mais opções, visite o site do grupo em: http://groups.google.com/group/web2py-users-brazil?hl=en
---
Você recebeu essa mensagem porque está inscrito no grupo "web2py-users-brazil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para web2py-users-br...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--


Carlos J. Costa
Cientista da Computação  | BS Computer Science
Esp. Gestão em Telecom   |
PgC Telecom Mangement
<º))><

Matheus Suffi

unread,
Sep 17, 2015, 9:06:48 AM9/17/15
to web2py-users-brazil
eu ja trabalhei em um ERP que carregava apenas uma página de login e uma página index, o resto era tudo via AJAX;
nós faziamos da seguinte maneira, deixavamos uma div com um id dentro do layout.html e nós criavamos as funções e views normalmente porem ao invés de chamar pelo html ou por botões como a maioria de páginas fazem, nós faziamos o request via AJAX para uma função de um controller que retornaria uma view e jogavamos isso dentro da div que setavamos no layout, dessa forma abriamos qualquer formulario,grid, etc sem carregar páginas.


um exemplo de como usavamos AJAX:
-- aqui coloque uma função que faça um gif de "loading" aparecer
$.ajax({
    type: "get ou post",
    url: "controller / function / parametros",
    dataType: "text",
    async: false, //add this
}).success(function ( data ) {
         $('#mae').html(data);
         --aqui retire a função "loading"
}).error(function ( data ) {
        $('#mae').html('erro ao carregar pagina, detalhes do erro:'+data)
         --aqui retire a função "loading"
});
é claro que vc também pode trabalhar com frames mais esse método ajax é bem simples e também é funcional.


--
Reply all
Reply to author
Forward
0 new messages