rong framework 重写init()方法以改变视图的存放路径
点击 1822 创建时间 2011-11-11 23:51:13
rong framework 重写init()方法以改变视图的存放路径。
在rong framework中,Rong_Controller在init()方法中实例化了$view成员变量,如果想要在其它动作中都改变视图的存储路径,在__construct()中是改变不了的,因为还没有初始化$view变量,直到init方法才初始化。所以你重写(override) init()时要先调用parent::init();以初始化Rong_View,然后再实现改变视图的存放路径。如下代码所示。
class BaseController extends Rong_Controller
{
public function __construct( )
{
parent::__construct();
$this->request->removeMagicQuotes();
//$this->setObject(Rong_Views_Dir , dirname( __FILE__ ) . "/views" );
}
public function init()
{
parent::init();
$this->view->setViewsDirectory( dirname( __FILE__ ) . "/views" );
}
}