Unbind HasAndBelongsToMany в CakePHP 2 не отменяет привязку модели
Как убрать привязку HasAndBelongsToMany
отношения в CakePHP 2.8? У меня есть эта модель, которая связана с моделью задач (отношение N:M).
class Date extends AppModel
{
public $name = 'Date';
public $displayField = 'rdate';
public $actsAs = array('Containable');
public $hasAndBelongsToMany = array('Task' => array('className' => 'Task'));
public function getCurrentDate()
{
return $this->find('first',
array(
'conditions' => array(
'Date.rdate' => date('Y-m-d')
)
)
);
}
}
Я хотел бы убрать в getCurrentDate()
функционировать эти отношения, но $this->recursive = -1;
в этой функции, ни в find()
не работает Мне нужна только одна запись из Date
модель, но поиск возвращает все задачи, связанные с этой моделью.
Редактировать #1: Даже не связывающая модель на лету не работает:
$this->unbindModel(
array('hasAndBelongsToMany' => array('Task'))
);
по-прежнему возвращает связанные данные модели.
1 ответ
Вы можете отменить привязку моделей на лету, используя unbindModel()
, Проверьте эти документы для специфики.
http://book.cakephp.org/2.0/en/models/associations-linking-models-together.html