[SP-pm] Data::Manager, alguém utiliza este troço ?!

Blabos de Blebe blabos at gmail.com
Tue Sep 3 10:42:15 PDT 2013


Mas se você estiver carente, adote o autor também :)


2013/9/3 Nuba Princigalli <nuba em fastmail.fm>

> **
> faz um fork E um release! se você curte o módulo e o autor tiver
> abandonado, você pode tentar adotá-lo, também -- o módulo, não o autor! ;)
>
>
> On Tue, Sep 3, 2013, at 01:02 PM, Tiago Peczenyj wrote:
>
> faz um fork.
>
>
> 2013/9/3 Renato Santos <renato.cron em gmail.com>
>
>
> Eu pessoalmente não gosto 100% do data-verifier.
>
> Ele tem dois 'bugs' que enchem o saco:
>
> https://github.com/gphat/data-verifier/issues/9
>
> e o cara nunca responde.
>
> Falta uma flag para dizer se o valor '' é pra ser valido ou virar undef.
>
> em caso de ints, num, booleans, faz sentido considerar '' como sendo
> undef, porém, textos podem ser vazios!
>
>
> Sobre a questão das mensagens, também seria legal poder pegar o motivo do
> erro.. podia ser um die dentro do post_check e capturar isso.
>
> ai depois seria crair só outro Data::ManagerFoo que saiba tratar os
> Data::VerifierFoo
>
>
>
> 2013/9/3 Solli Honorio <shonorio em gmail.com>
>
>
> Lucas,
>
> Obrigado pelo retorno. Ontem a noite estudei o código do Data::Manager e
> ví que realmente não rola fazer o que eu estava querendo fazer (passar uma
> pilha de mensagem e receber de acordo com o contexto) e ai estou
> encaminhando para a mesma solução que você.
>
> Como vc faz com o I18N ?
>
> O Renato Cron publicou um 'template'  ( https://github.com/AwareTI/MyApp) de
> como eles estão utilizando o Data::Manager. Estudei o código e achei
> engenhoso, mas ainda quero manter um melhor controle do ResultSet porquê
> quero devolver uma estrutura mais complexa de informação.
>
> Abraços,
>
> Solli Honorio
>
>
>
>
> 2013/9/3 Lucas Oliveira <lucasmateus.oliveira em gmail.com>
>
>
> Normalmente eu uso sempre com I18N mas da pra quebrar o galho assim
>
> <code>
> #!/usr/bin/env perl
>
>  use common::sense;
> use Data::Manager;
> use Data::Verifier;
>
>  my %msg_data= (
>  missing_name_last => 'Nao foi informado o campo name_last, seu idiota !',
>  );
>
>  sub messages { $msg_data{$_[0]} || $_[0] }
>
> my $dm = Data::Manager->new;
>  my $dv = Data::Verifier->new(
>      filters => [ qw(trim) ],
>          profile => {
>              name_first => {
>                 required => 1,
>                  type     => 'Str',
>                 filters  => [ qw(collapse) ]
>             },
>              name_last => {
>                 required => 1,
>                  type     => 'Str',
>                 filters  => [ qw(collapse) ]
>             },
>             age  => {
>                 type        => 'Int'
>              },
>             sign => {
>                  required    => 1,
>                 type        => 'Str'
>             }
>         }
>     );
>
>  $dm->set_verifier( name => $dv );
>  $dm->verify( name => { name_first => 'Solli' });
>
> if (!$dm->success) {
>  print &messages( $_->msgid ).$/
>        foreach (@{ $dm->messages->messages });
>  }
>  </code>
>
>
> Em 02/09/2013, às 11:10, Solli Honorio <shonorio em gmail.com> escreveu:
>
>
> Pessoal,
>
> Estou tentando configurar uma mensagem padronização no Data::Manager, mas
> não está funcionando. Alguém aqui já utilizou o Data::Manager para saber se
> é possível fazer isto que eu quero ?
>
> O código abaixo, estou criando uma mensagem e adicionando no Data::Manger,
> porquê eu imaginei que quando ocorrer o problema dentro do escopo e msgid,
> eu teria o texto padronizado, mas o que estou recebendo é mais uma pilha de
> mensagem, mesmo quando não existe o erro.
>
> <code>
> #!/usr/bin/env perl
> use common::sense;
> use Data::Manager;
> use Data::Verifier;
> use Data::Printer;
>
> my $msg = Message::Stack->new;
> $msg->add({
>     msgid   => 'missing_name_last',
>     level   => 'error',
>     scope   => 'name1',
>     subject => 'name_last',
>     text    => 'Não foi informado o campo name_last, seu idiota !'} );
>
> my $dm = Data::Manager->new( { messages => $msg } );
> my $dv = Data::Verifier->new(
>     filters => [ qw(trim) ],
>         profile => {
>             name => {
>                 required => 1,
>                 type     => 'Str',
>                 filters  => [ qw(collapse) ]
>             },
>             age  => {
>                 type        => 'Int'
>             },
>             sign => {
>                 required    => 1,
>                 type        => 'Str'
>             }
>         }
>     );
>
>
> };
>
>
> $dm->set_verifier('name1', $verifier);
> $dm->verify('name1', { name_last => 'Honorio', name_first => 'Solli' });
>
>  my $results = $dm->get_results('name1');
> my $stack   = $dm->messages_for_scope('name1');
>
> say $results->success;
>
> say "Is invalid name_first ", $results->is_invalid('name_first');
> say "Is invalid name_last ",  $results->is_invalid('name_last');  # yes
>
> say "Is missing name_first ", $results->is_missing('name_first'); # no
> say "Is missing is_missing ", $results->is_missing('name_last'); # yes
>
> say "Missing count ", $results->missing_count;
>
> say "Count : ",  $stack->count ;
> p $stack->get_message( 0 );
> p $stack->get_message( 1 );
>
> </code>
>
>
> --
> "o animal satisfeito dorme". - Guimarães Rosa
>    =begin disclaimer
>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>
>
> =begin disclaimer
>     Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>   SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>   L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>  =end disclaimer
>
>
>
>
>
> --
> "o animal satisfeito dorme". - Guimarães Rosa
>
> =begin disclaimer
>     Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>   SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>   L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>  =end disclaimer
>
>
>
>
>
> --
>  Saravá,
> Renato CRON
> http://www.renatocron.com/blog/
>  @renato_cron <http://twitter.com/#!/renato_cron>
>
> =begin disclaimer
>     Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>   SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>   L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>  =end disclaimer
>
>
>
>
>
> --
> Tiago B. Peczenyj
> Linux User #405772
>
> http://about.me/peczenyj
>  =begin disclaimer
>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>
> --
> Nuba R. Princigalli nuba em pauleira.com http://pauleira.com @nprincigalli
> Discipline is not an end in itself, just a means to an end. - King Crimson
>
>
> =begin disclaimer
>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>
-------------- Pr�xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20130903/58e8fe4e/attachment-0001.html>


More information about the SaoPaulo-pm mailing list