[Rio-pm] Mojolicious - inserindo código HTML no template via rota

Manoel Domingues Junior manoel.domingues.junior em gmail.com
Sábado Setembro 8 09:26:25 PDT 2012


Vou ir para essa estratégia então...

Mas nesse caso eu criaria uma rota onde haveria esse render_json?

Tipo, no meu frontend eu teria:

<script src="/widget_timeline"></script>

E no Mojolicious e teria:

  get '/widget_timeline' => sub {
    ...
    $self->render_json($widget_timeline);
  };

Onde a variável $widget_timeline fosse uma estrutura em perl que seria
traduzida para JSON.

É isso?


Abraços,

Em 8 de setembro de 2012 00:24, breno <oainikusama em gmail.com> escreveu:

> Manoel, procure evitar escrever código JavaScript dentro do seu
> backend. O mais adequado para dados mudando dinamicamente é passar
> objetos JSON apenas, deixando que o JavaScript no frontend faça as
> solicitações por estruturas diferentes conforme necessário.
>
> Pra esse tipo de solicitação o Mojolicious oferece o método
> render_json(), que já transforma suas variáveis Perl em JSON.
> https://metacpan.org/module/Mojolicious::Controller#METHODS
>
> []s
>
> -b
>
> 2012/9/8 Manoel Domingues Junior <manoel.domingues.junior em gmail.com>:
> > Perfeito.
> >
> > Muito obrigado.
> >
> > Abraços,
> >
> > Em 7 de setembro de 2012 23:52, Renato Santos <renato.cron em gmail.com>
> > escreveu:
> >
> >> Olá,
> >>
> >> você deve mudar sua view para:
> >>
> >> de <%= 'lalala' %>
> >> para  <%== '<p>test</p>' %>
> >>
> >> vi no
> >>
> http://search.cpan.org/~sri/Mojolicious-3.36/lib/Mojolicious/Guides/Rendering.pod#Embedded_Perl
> >> 2012/9/7 Manoel Domingues Junior <manoel.domingues.junior em gmail.com>
> >>>
> >>> Olá pessoal,
> >>>
> >>> Estou construindo mais uma aplicação web com mojolicious::lite e estou
> >>> enfrentando mais uma dificuldade.
> >>> A minha aplicação irá gerar gráficos via javascript, mas preciso enviar
> >>> esses dados pre-formatados entre tags <script></script>.
> >>>
> >>> A ideia é colocar um grafico semenhante a esse:
> >>> http://www.highcharts.com/demo/line-basic/gray
> >>>
> >>> Como verão, existe alguns <div>'s que devo colocar no template, mas
> >>> também devo colocar um código javascript. Esse código muda, pois
> realiza
> >>> consultas no banco de dados para obter os valores, logo criei uma
> funcão que
> >>> gera ele.
> >>>
> >>> Essa função retorna uma string com todo o código ($widget_timeline) e
> >>> tento então passar o valor dessa string para o template, mas o
> mojolicious
> >>> faz a conversão para HTML, logo não aparece como código...
> >>>
> >>> Dentro da rota da minha aplicação coloquei um
> >>> $self->stash(widget_timeline => $widget_timeline), acredito que tenha
> que
> >>> usar outra função para passar o código, ou então usar outra
> abordagem...
> >>>
> >>> Sugestões?
> >>>
> >>> Abraços,
> >>> --
> >>> --
> >>> Manoel Domingues Junior
> >>> "Coletar dados é o primeiro passo para a sabedoria, mas compartilhar
> >>> dados é o primeiro passo para a comunidade."
> >>> IBM - Prodigy Linux
> >>>
> >>>
> >>> _______________________________________________
> >>> Rio-pm mailing list
> >>> Rio-pm em pm.org
> >>> http://mail.pm.org/mailman/listinfo/rio-pm
> >>
> >>
> >>
> >>
> >> --
> >> Saravá,
> >> Renato CRON
> >> http://www.renatocron.com/blog/
> >> @renato_cron
> >>
> >>
> >> _______________________________________________
> >> Rio-pm mailing list
> >> Rio-pm em pm.org
> >> http://mail.pm.org/mailman/listinfo/rio-pm
> >
> >
> >
> >
> > --
> > --
> > Manoel Domingues Junior
> > "Coletar dados é o primeiro passo para a sabedoria, mas compartilhar
> dados é
> > o primeiro passo para a comunidade."
> > IBM - Prodigy Linux
> >
> >
> > _______________________________________________
> > Rio-pm mailing list
> > Rio-pm em pm.org
> > http://mail.pm.org/mailman/listinfo/rio-pm
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>



-- 
--
Manoel Domingues Junior
"Coletar dados é o primeiro passo para a sabedoria, mas compartilhar dados
é o primeiro passo para a comunidade."
IBM - Prodigy Linux
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/rio-pm/attachments/20120908/be8cc3a2/attachment.html>


Mais detalhes sobre a lista de discussão Rio-pm