我有一個行爲附加到模型,應取決於模型的某些屬性應該有不同的行爲。例如:設置相關的行爲蛋糕上的行爲
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 2010-08-11 21:29:55
你已經擁有了它?您可以完全訪問模型。如果它作爲模型的屬性存儲,則應該能夠抓住它。 – 2010-08-11 21:56:18