12 Temmuz 2009 Pazar

Zend_Auth birden fazla modülde kullanmak

Zend_Auth ile oturum yönetimi yapılabilmekte ama birden fazla modülünüz varsa ve bunların arasında ayrım yapmak istiyorsanız ilk kez register ettiğinizde;


$TicketUserPlugin = Zend_Auth::getInstance ( );
$TicketUserPlugin->setStorage(new Zend_Auth_Storage_Session('ticketAuth'));

$UserPlugin = Zend_Auth::getInstance ( );
$UserPlugin->setStorage(new Zend_Auth_Storage_Session('defaultAuth'));



Böylece karışmaz ama bana kalsa en güzeli initializer da modül adına göre kontrol yapıp ordan ayırmak ama yukardaki dediğimide kullanmanız gerekiyor. initializer da ayırım yaparsanız $TicketUserPlugin = Zend_Auth::getInstance ( ); gibi bir çağırmada setStrogae demenize gerek kalmaz.

Not: Modül adını yakalamak için;

public function routeStartup(Zend_Controller_Request_Abstract $request)
{

}

public function routeShutdown(Zend_Controller_Request_Abstract $request)
{

}

public function dispatchLoopStartup(
Zend_Controller_Request_Abstract $request)
{

}

public function preDispatch(Zend_Controller_Request_Abstract $request)
{

}

public function postDispatch(Zend_Controller_Request_Abstract $request)
{

}



metodlarından biri kullanılabilir. Bunlar yazdığım sırayla çağrılmaktadır. Kimisinde yaptığınız işe göre yakalama yapamayabilirsiniz. O zaman bir sonrakini denemeniz gerekebilir.

http://framework.zend.com/manual/en/zend.controller.plugins.html

Hiç yorum yok: