3
我運行CakePHP的2.0.2,我有以下關係的hasMany「通過」關係和多選的形式
Category hasMany CategoryWork
Work hasMany CategoryWork
CategoryWork belongs to Category,Work
一個經典的hasMany通過每個蛋糕的文檔的關係。
我有一個工作添加/編輯窗體與選擇框,允許用戶選擇多個類別。我遇到的問題是,當用戶編輯現有的作品時,關聯的類別沒有預選。
我有以下代碼來填充選擇框,這是實際可行的:
$categoryWorks = $this->CategoryWork->Category->listCategories();
$this->set(compact('categoryWorks'));
然後我輸入域看起來是這樣的:
<?= $this->Form->input('CategoryWork', array('multiple' => true, 'label' => 'Categories')); ?>
這將填充選擇欄,但它不會用工作的關聯類別預先選擇它。
所以,我可以解決這個問題。我只是向輸入呼叫提供選定的選項,並獲得預選的類別。但我期待cakephp對我來說更神奇:)
我的理論是,蛋糕正在查看從工作查詢返回的CategoryWork行的id,並且它不匹配填充在分類中的Categories的id落下。它需要看看category_id。
有關這方面的想法?我覺得我幾乎在那裏,我只是想念一些事情來幫助蛋糕做它的事情。
在此先感謝!