Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

criatividade zero

controller redirect + after()

Recommended Posts

como alguns exemplos de FW, o 'nucleo' possui um metodo after e um before

no caso o sistema armazena dados para o log com informações do sistema, o controller cria com fins de estatistica, e o metodo after faria o log::write

se o controller contiver um redirect, o redirecionamento nao será feito e o metodo after nao será executado e o log nao é criado

usar register_shutdown_function para 'forçar' qualquer pendencia é uma pratica 'aceitavel' ou um contorno para um problema?

 

seria feito register_shutdown_function( array( 'Sistema' , 'after' ) );

 

Sistema
{
    after(){
    escreve o log...
    }
}

 

eu mantenho a gravação de logs apos todo o processo, mas em caso de redirecionamento daria pau

a exemplo do Kohana 3.2 que faz um register_shutdown_function na função log, com isso, o redirect é feito o o log é criado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá criatividade, na minha OPNIÃO, eu não acho que isso seja inaceitável(leia-se: não é POG), o fluxo do sistema não será interrompido e outra, existe essa função para isso mesmo.

 

Eu acho que no meu caso se algum dia no contexto do meu sistema tivesse que ser feito algo parecido com o que você precisa eu não exitaria em usar ela :thumbsup:

Compartilhar este post


Link para o post
Compartilhar em outros sites

fiz uns testes e vi que o header Location nao redireciona de imediato, ele nao interrompe o processo da pagina

 

 

eu estou fazendo:

processando e analisando a requisição

carregando o controller, model e view

a ultima etapa é a renderização da página e a escrita do log

 

meu medo é ter um redirect dentro do controller, o que pensava fazer o redirecionamento no ato, e isso mataria o processo de escrita do log

 

 

será que é 100% seguro de não redirecionar antes do processo concluido?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.