2012-11-22 3 views
2

Existe-t-il une méthode dans Kohana 3.2 ORM pour la cascade delete.I suis un débutant dans kohana alors quelqu'un peut m'aider dans cette affaire?Kohana ORM cascade delete

Répondre

2

J'ai peur qu'il n'y en ait pas à Kohana. Si vous avez vraiment besoin, vous devez l'appliquer au niveau de la base de données (ON DELETE CASCADE)

1

en cascade effacements remplacer la méthode delete() dans votre modèle:

class Model_Alpha extends ORM 
{ 
    protected $_has_many = array(
    'beta' => array(
     'model' => 'beta', 
     'foreign_key' => 'alpha_id', 
    ), 
    'gamma' => array(
     'model' => 'gamma', 
     'foreign_key' => 'alpha_id', 
    ), 
); 

    function delete() 
    { 
    foreach($this->beta->find_all() as $entry) 
     $entry->delete(); 
    foreach($this->gamma->find_all() as $entry) 
     $entry->delete(); 
    parent::delete(); 
    } 
} 

Vous pouvez alors autre cascade en redéfinissant la méthode delete() sur les modèles que vous supprimez.

Questions connexes