[SP-pm] Data::Manager, alguém utiliza este troço ?!
Lucas Oliveira
lucasmateus.oliveira at gmail.com
Tue Sep 3 11:09:56 PDT 2013
Solli sempre usei com Catalyst e para o I18N eu utilizo o https://metacpan.org/module/Catalyst::Plugin::I18N e entao da pra usar o c.loc inclusive nos templates.
Em 03/09/2013, às 12:11, Solli Honorio <shonorio em gmail.com> escreveu:
> 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
-------------- Pr?xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20130903/d1db0535/attachment-0001.html>
More information about the SaoPaulo-pm
mailing list