0

関係は次のようになります。

Podcasts <-HABTM-> Users

それらの間の関連付けを削除するにはどうすればよいですか (挿入は正常に機能します)。多くのスレッドを検索しましたが、有効な答えが見つかりませんでした。これは私がすでに持っているものです:

モデル/PodcastsUser.php

public function removePodcast($podcastId, $userId){
    if(empty($podcastId) || empty($userId)) return false;

    $this->User->PodcastsUser->deleteAll(array(
        'PodcastsUser.podcast_id' => $this->data['Podcast'][$podcastId], 
        'PodcastsUser.user_id' => $this->data['Podcast'][$userId]
    ));
}

UserController.php

public function removepodcast($podcastId, $userId){
    //$this->loadModel('PodcastsUser');
    $this->User = ClassRegistry::init('PodcastsUser');

    if ($this->User->removePodcast($podcastId, $userId)){
        $this->Session->setFlash(__('The podcast has been removed'));
        $this->redirect(array('controller' => 'users', 'action' => 'index'));
    }else {
            $this->Session->setFlash(__('The podcast could not be removed. Please, try again.'));
        }
}

ビュー/ユーザー/

echo $this->Html->link(__('Remove'), array('controller' => 'users', 'action' => 'removepodcast', $mypodcast['Podcast']['id'], $this->Session->read('Auth.User.id')));

ここでこの説明を見ましたが、私には明確ではありません。例や修正を手伝ってください。

4

0 に答える 0