这个问题可能听起来很奇怪,而且确实如此。这就是问题所在:我有一个模型FollowingStationLine
,和它对应的表,following_station_lines
。在模型中,我试图用$this->save(array('field' => 'value));
. 当我点击相应的页面时,该方法似乎在无限循环中调用(我debug()
在 save 语句之前和之后放置了一些 s),并且仅在达到内存限制时才结束。我什至尝试了 2GB 的内存,但仍然是同样的问题。
当从另一个控制器调用方法时也会发生这种情况,而不是FollowingStationLinesController
. 除了这个之外,所有其他模型/表格都按预期工作。我真的无法想象有什么问题。以下是控制器的代码,分别是模型:
控制器:
App::uses('AppController', 'Controller');
class FollowingStationLinesController extends AppController {
public function admin_set() {
$this->FollowingStationLine->set(array(1));
}
}
模型:
App::uses('AppModel', 'Model');
class FollowingStationLine extends AppModel {
public function set($lineIds = array()){
if(!is_array($lineIds)){
return false;
}
$save = array();
$save[] = array('station_id' => 45);
debug($save[0]);
$this->save($save[0]);
}
}
任何帮助将不胜感激!