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 <[1][email protected]> Eu pessoalmente não gosto 100% do data-verifier. Ele tem dois 'bugs' que enchem o saco: [2]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 <[3][email protected]> 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' ( [4]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 <[5][email protected]> 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 <[6][email protected]> 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: [7]http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [8][email protected] L<[9]http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer =begin disclaimer Sao Paulo Perl Mongers: [10]http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [11][email protected] L<[12]http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer -- "o animal satisfeito dorme". - Guimarães Rosa =begin disclaimer Sao Paulo Perl Mongers: [13]http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [14][email protected] L<[15]http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer -- Saravá, Renato CRON [16]http://www.renatocron.com/blog/ [17]@renato_cron =begin disclaimer Sao Paulo Perl Mongers: [18]http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [19][email protected] L<[20]http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer -- Tiago B. Peczenyj Linux User #405772 [21]http://about.me/peczenyj =begin disclaimer Sao Paulo Perl Mongers: [22]http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [23][email protected] L<[24]http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer -- Nuba R. Princigalli [email protected] http://pauleira.com @nprincigalli Discipline is not an end in itself, just a means to an end. - King Crimson References 1. mailto:[email protected] 2. https://github.com/gphat/data-verifier/issues/9 3. mailto:[email protected] 4. https://github.com/AwareTI/MyApp 5. mailto:[email protected] 6. mailto:[email protected] 7. http://sao-paulo.pm.org/ 8. mailto:[email protected] 9. http://mail.pm.org/mailman/listinfo/saopaulo-pm 10. http://sao-paulo.pm.org/ 11. mailto:[email protected] 12. http://mail.pm.org/mailman/listinfo/saopaulo-pm 13. http://sao-paulo.pm.org/ 14. mailto:[email protected] 15. http://mail.pm.org/mailman/listinfo/saopaulo-pm 16. http://www.renatocron.com/blog/ 17. http://twitter.com/#!/renato_cron 18. http://sao-paulo.pm.org/ 19. mailto:[email protected] 20. http://mail.pm.org/mailman/listinfo/saopaulo-pm 21. http://about.me/peczenyj 22. http://sao-paulo.pm.org/ 23. mailto:[email protected] 24. http://mail.pm.org/mailman/listinfo/saopaulo-pm
=begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [email protected] L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer
