Je ne parviens pas à définir une relation d'intégrité référentielle à l'aide des relations de table Zend Frameworks, comme indiqué dans manual. J'ai épuisé toutes les configurations possibles (ce qui semble être le cas), et je suis maintenant confronté à la possibilité de développer l'application sans pouvoir utiliser les suppressions en cascade, ce qui n'est pas souhaitable.Aide à la définition de l'intégrité référentielle dans Zend Framework 1.8.3 à l'aide du modèle Data Mapper
Quelqu'un peut-il voir ce qui ne va pas ou offrir des suggestions?
Mon projet est configuré en utilisant la nouvelle méthode recommandée ZF 1.8.3, avec des datamappers, et je me demande si c'est une raison pour laquelle je suis incapable de reproduire le comportement comme décrit dans le guide de référence. Quelqu'un at-il une expérience de ce problème?
Voici les parties pertinentes des classes:
application/modèles/UsersMapper.php
class Default_Model_UsersMapper {
public function deleteUser($id, Default_Model_Users $users){
$usersTable = new Default_Model_DbTable_Users();
$usersRowset = $usersTable->find($id);
$userToDelete = $usersRowset->current();
$userToDelete->delete();
}
application/modèles/DbTable/users.php
class Default_Model_DbTable_Users extends Zend_Db_Table_Abstract
{
/**
* @var string Name of the database table
*/
protected $_name = 'users';
/**
* @desc reference map
*
*/
protected $_referenceMap = array(
'Comment' => array(
'columns' => array('user_id'),
'refTableClass' => 'Comment',
'refColumns' => array('id'),
'onDelete' => self::CASCADE
)
);
}
application/modèles /CommentMapper.php
... et la table reliée par la classe:
comment.php
class Default_Model_DbTable_Comment extends Zend_Db_Table_Abstract
{
/**
* @var string Name of the database table
*/
protected $_name = 'comment';
/**
* @desc Defining referential integrity here since we are using MyISAM
* Dependent tables are referred via the class name.
*/
protected $_dependentTables = array('Users');
}
Pourquoi avez-vous un utilisé deuxième paramètre Supprimer l'utilisateur()? Default_Model_Users $ users – hobodave
C'est un peu stupide ... Et qu'en est-il de la charge automatique en classe? –