coquille
感恩老大。
原理大致明白了,回头详细学习。嗯,多谢老大。:)
User Model的一些属性是怎样合并到Yii::app()->user中去的我还没搞明白。多谢大家的帮助。:)
目前我是写在componts/controller里,只是这样也存在一个问题,当controller的子类覆盖了父类的filters函数,那么还是要在子类里面加入一段处理,例如yii api文档里面所说的:Note, in order to inherit filters defined in the parent class, a child class needs to merge the parent filters with child filters using functions like array_merge().public function filters() { return array_merge(parent::filters(), array( 'accessControl', )); }
@舰长
速度慢的问题调查清楚了。是Xdebug导致的,将Xdebug停用就好了。另有一个问题。TreeController.php里面有这样一段代码:
public function actionUpdate($id) { $model=$this->loadModel($id); $model->parent = $model->getParentNode()->id; // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); if(isset($_POST['Tree'])) { $model = $this->loadModel($id); $parent = $this->loadModel($_POST['Tree']['parent']); if($model->getParentNode()->getIDValue() != $parent->getIDValue()) $result = $model->moveBelow($parent); $model->attributes=$_POST['Tree']; if($model->save()) $this->redirect(array('admin')); } $this->render('update',array( 'model'=>$model, )); }
其中
$model->parent = $model->getParentNode()->id;
这一句,Tree.php里面并没有getParentNode
这个函数,为什么却可以运行?实际上是调用了TreeBehavior.php里面的同名函数么?Tree和TreeBehavior没有直接继承关系,怎么会可以互相调用呢?百思不得其解。第二个问题,如果在admin界面中update id为1的那条记录,会报告
Trying to get property of non-object
错误。php的错误信息指向$model->parent = $model->getParentNode()->id;
,应该是id为1的这条记录没有Parent了吧?以上。
刚验证了一下,在我机器上,马桶3和ie9的情况也一样。
可能是其它条件的影响?
我这儿的运行环境:xampp 1.7.4+ Apache 2.2.17 + MySQL 5.5.8 (Community Server) + PHP 5.3.5 (VC6 X86 32bit) + PEAR
win7 64bit 旗舰
ff4,请参考附图:
[attach]272[/attach]多谢舰长。
我这边试用了一下,靠谱。
有个小问题请教一下,页面刚装载进来的时候,树的包含子节点的节点左边是圆点,而非正常的加减号,不能做折叠和展开操作。此时浏览器状态栏显示【正在和服务器传输数据】,需要过1分钟左右,才“传输完毕”,圆点变成加减号,才可以做折叠展开操作。不知道大家有遇到同样问题么?多谢诸位,我都试试。:)