Felipe,
Os actions views helpers são métodos que permitem receber resposta de
qualquer ação em qualquer controlador em qualquer módulo. Os actions
views helpers são métodos denominados da seguinte maneira:
$string = $this->view->action('nomeDaAcao', 'nomeDoController',
'nomeDoModulo', array(params)); na parte controller
Quando você usa esse método, você estará subestimando o desempenho do
servidor, desperdiçando a memória e os recursos gerais, pois esse
método cria um dispatch adicional, copia um objeto request e gera um
loop dentro do loop, para assim, então retornar o resultado da action.
Esclarecendo:
* os views helpers são recomendados.
* os actions helpers são recomendados.
* os actions views helpers NÃO são recomendados.
Espero ter esclarecido melhor. Qualquer dúvida, nos pergunte à
vontade.
Raphael,
Um simples _foward() não resolve. Porque eu gostaria de recuperar as
informações de uma action, para assim, eu poder acrescentar novas
informações ou manipular os dados. Por exemplo, executando o método:
$string = $this->_foward('contato, 'index, 'default');
...esse método não retornará nenhum resultado à variável $string.
Simplesmente o método vai "redirecionar internamente" à página
desejada, sem enviar o cabeçalho ao navegador, e nada mais, portanto,
o endereço da url não muda. Já que o $this->redirect() envia o
cabeçalho ao navegador, mudando a url, dando mais transparência ao
usuário.
Para que a variável $string possa receber informação em qualquer
action, para manipular os dados, o ideal, mas NÃO RECOMENDADO, aplicar
o action view helper:
$string = $this->view->action('nomeDaAcao', 'nomeDoController',
'nomeDoModulo', array(params)); na parte controller
Dessa forma, receberei o resultado da ação. Alternativamente, pensei
em aplicar uma herança em um controller pai para receber resultado de
alguma action, de modo a não desperdiçar os recursos do servidor. Mas
ainda não sei se é uma boa prática.
Qualquer dúvida, por favor, nos pergunte.
Abrs.
On Jun 9, 10:49 pm, Raphael Almeida <
jaguarn...@gmail.com> wrote:
> Um simples _forward()não resolve? Que eu me lembre não rola um novo
> dispatch.
http://framework.zend.com/manual/en/zend.controller.action.html
>
> --
> []ão,
>
> Raphael de Almeida
>
> http://raphaeldealmeida.nethttp://
www.twitter.com/raph_almeidahttp://rubyonrio.org|http://phprio.org|http://androidinrio.com.br<
http://www.androidinrio.com.br/blog/>
>
http://www.arduinrio.cc|
http://dojorio.org