J'utilise CodeIginter comme framework PHP. J'expliquais la situation ci-dessous: -CodeIgniter - plusieurs instances d'un modèle
J'ai besoin de trois modèles nommés: -
- User_Model
- Relation_Model
- Reminder_Model
considèrent maintenant la situation:
User_Model
est déjà écrit. J'écris Relation_Model
. Mon ami écrira le Reminder_Model
.
Relation_Model
instancie User_Model
, et utilise que, dans une de ses méthodes: getRelation($userID)
Reminder_Model
également instancie une User_Model
exemple pour son fonctionnement.
Reminder_Model
doit appeler getRelation
méthode de Relation_Model. Par conséquent, il doit y avoir au moins deux instances de User_Model
. Un en Relation_Model
, un autre en Reminder_Model
.
Le problème est de savoir comment puis-je assurer l'intérieurRelation_Model
, que mon User_Model
exemple ne pas interférer avec l'instance User_Model
de classe de mon ami Reminder_Model
?
En d'autres termes, pour le code Reminder_Model
, mon ami ne devrait pas avoir une connaissance interne de Relation_Model
, juste pour utiliser l'une de ses méthodes getRelation
. Si vous voulez connaître le besoin pour cela, dites: Reminder_Model charge le modèle de l'utilisateur qui s'est connecté (disons user-A), Relation_Model fonctionne avec les modèles des utilisateurs qui sont membres de l'équipe de l'utilisateur-A .
La première méthode, exigera, l'implémenteur de Reminder_Model avoir une connaissance interne de Relation_Model (le fait que dans Relation_Model, j'ai instancié User_Model avec le nom de Second_User_Model!). Oui, j'ai aussi pensé au clonage. – Sabya