2013-11-22 2 views
0

У меня есть две модели. Один из них - пользователь, а другой - UserProfile, и в них созданы пользователи и пользователи user_profiles. Я хочу, когда я удаляю пользовательские данные, тогда связанный UserProfile также должен автоматически удаляться. Я создал hasone и принадлежит отношению. Еще одна вещь, я удаляю данные, используя флажок с кнопкой удаления, чтобы я мог удалять сразу несколько записей.Удалить несколько выбранных записей из флажка в отношении

User.php

public $hasOne = array(
    'UserProfile' => array(
     'className' => 'UserProfile', 
     'foreignKey' => 'user_id', 
     'dependent' => false, 
     'conditions' => '', 
     'fields' => '', 
     'order' => '', 
     'limit' => '', 
     'offset' => '', 
     'exclusive' => '', 
     'finderQuery' => '', 
     'counterQuery' => '' 
    ), 
); 

UserProfile.php

public $belongsTo = array(
    'User' => array(
     'className' => 'User', 
     'foreignKey' => 'user_id', 
     'conditions' => '', 
     'fields' => '', 
     'order' => '' 
    ), 
); 

В UsersController я есть функция deleteSelected

UsersController.php

public function deleteSelected() 
{ 
    foreach($this->data['User'] as $key => $value) 
    { 
     if($value != 0) 
     { 
      $this->User->delete($value); 
     } 
    } 
    $this->redirect($this->referer()); 
} 

finaaly я собирающий g a Ошибка: Таблица groups_users для модели GroupsUser не найдена в источнике данных по умолчанию. Пожалуйста, сообщите, что случилось в моем коде. Благодарю.

+1

почему ' 'зависимой' => false'? значение зависимого заключается в получении того, что вы запрашиваете. – arilia

+0

Также эта ошибка, похоже, не имеет никакого отношения к коду, который вы здесь показываете. Если вам нужна помощь, добавьте соответствующий код в отношении групповых ассоциаций. ps, всегда упоминайте свою точную версию CakePHP! – ndm

+0

Спасибо! Арилия за ответ. Моя версия cakephp - 2.4. У меня еще 3 стола. users_type, groups и users_group. В моей таблице групп есть user_id, а users_group - user_id и group_id. – yolla

ответ

1

набор зависит от истинного

public $hasOne = array(
    'UserProfile' => array(
     'className' => 'UserProfile', 
     'foreignKey' => 'user_id', 
     'dependent' => true, 
     'conditions' => '', 
     'fields' => '', 
     'order' => '', 
     'limit' => '', 
     'offset' => '', 
     'exclusive' => '', 
     'finderQuery' => '', 
     'counterQuery' => '' 
    ), 
); 
Смежные вопросы