모델에 연결된 동작이 있는데, 이는 모델의 일부 속성에 따라 다르게 동작해야합니다. 예 : 설정 종속적 인 케이크에 대한 행동
class Airplane extends AppModel {
var $actsAs = array('Flying');
}
class FlyingBehavior extends ModelBehavior {
function flightTime(&$Model, $distance) {
return $distance/$this->speed;
}
}
처음에 나는
class Airplane extends AppModel {
var $actsAs = array('Flying' =>
array('speed' => SOMENUM)
);
}
class FlyingBehavior extends ModelBehavior {
function setup(&$Model, $settings) {
$this->speed = $settings['speed'];
}
function flightTime(&$Model, $distance) {
return $distance/$this->speed;
}
}
처럼 설정하지만 각 Airplane
기록에서 speed
열을 가져올 필요할 것 때문에 나는이 일을하는 방법을 모른다 생각했다. 어떻게해야합니까?
이미 가지고있는 데이터에 대해 두 번 쿼리해야하기 때문에 좋은 해결책이 아닙니다. – Aillyn
당신은 이미 그것을 가지고 있습니까? 모델에 대한 완전한 액세스 권한이 있습니다. 모델의 특성으로 저장되어 있다면, 그 모델을 잡을 수 있어야합니다. –