我在CakePHP的模型中創建了自定義驗證函數。在閱讀過類似的問題之後,我瞭解到我可以使用ClassRegistry::init('Model');
在當前模型中加載外部模型。但是它並沒有多說關於句法以及之後如何實際使用它的內容。這是我試過的,但是當我試圖打印數組以查看它是否包含正確的東西時,沒有任何「正在發生」。基本上我想拉出用戶數據在我的驗證中使用它。CakePHP - 在當前模型中使用不同的模型
class Booking extends AppModel {
public $name = 'Booking';
public $validate = array(
'start_time' => array(
'noOptionViolation' => array(
'rule' => 'noOptionViolation',
'allowEmpty' => false
)
),
);
public function noOptionViolation ($start_time) {
$this->User = ClassRegistry::init('User');
$allUsers = $this->User->find('all');
print_r($allUsers);
}
這是正確的語法嗎?我可以像使用控制器一樣使用$ this-> User的所有方法嗎?
其實,事情是發生在負荷模型
,並訪問所有功能。 '$ allUsers'包含預期的數據,就像在控制器中一樣。因此,這似乎是將外國模型數據提取到當前模型的一種簡單方法。它只留下了我是否可以訪問所有正常模型方法的問題。可能是。 – alieninlondon