Valeu Eden, Renato foi isso mesmo, eu estava tentando usar capturas, mas sem 
parenteses só me retornava o numero 1.Eden quando eu for para são paulo eu te 
pago um kaiser :)Falou.

From: [email protected]
Date: Mon, 11 Jul 2011 00:21:42 -0300
To: [email protected]
Subject: Re: [SP-pm] Validar session no Catalyst

Lembrando Lucas, que foi adiciona as capturas usando parenteses.
[e que acabou ficando da mesma cor como se não fosse alterado] 


2011/7/11 Eden Cardim <[email protected]>



>>>>> "Lucas" == Lucas Moraes <[email protected]> writes:



    Lucas> para validar:

    Lucas> sub end :Private {

    Lucas>     my ( $self, $c ) = @_;

    Lucas>     if(!$c->user_exists){

    Lucas>         $c->res->redirect('/login');

    Lucas>     }

    Lucas> }



Depende do que você quer fazer. Geralmente você quer verificar se o

usuários está logado *antes* de rodar o código pra poder barrar. Vale

lembrar também, que o redirect só seta os cabeçalhos adequados sem mudar

o fluxo de execução do código. Se você quer impedir a execução de

qualquer código sem que o usuário esteja autenticado, faça assim:



--8<---------------cut here---------------start------------->8---

    sub begin :Private {

      my ( $self, $c ) = @_;

         if(!$c->user_exists){

             $c->res->redirect('/login');

             $c->detach;

         }

    }

--8<---------------cut here---------------end--------------->8---



    Lucas> para pegar valores do Args:

    Lucas> sub alterar :LocalRegex('[0-9]') {

    Lucas>     my ( $self, $c, @get) = @_;



    Lucas>     $c->stash->{valor} =  $get[0];

    Lucas>     $c->forward('View::TT');

    Lucas> }



Primeiro, você precisa de capturas na regex, segundo, capturas não vem

como argumentos, você precisa acessar através do método

$c->req->captures, fica mais ou menos assim:



--8<---------------cut here---------------start------------->8---

sub alterar :LocalRegex('([0-9])') {

    my($self, $c) = @_;

    $c->stash->{valor} = $c->req->captures->[0];

    $c->forward('View::TT');

}

--8<---------------cut here---------------end--------------->8---



--

   Eden Cardim       Need help with your Catalyst or DBIx::Class project?

  Code Monkey                    http://www.shadowcat.co.uk/catalyst/

 Shadowcat Systems Ltd.  Want a managed development or deployment platform?

http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/

http://twitter.com/#!/edenc

=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



-- 
Renato Santos
http://www.renatocron.com/blog/



=begin disclaimer
   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
 SaoPaulo-pm mailing list: [email protected]
 L
=end disclaimer                                           
=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

Responder a