Fonction générique pour model

Par Pierre Ftn, il y a 11 ans


Bonjour j'ai le modèle suivant dans code igniter

<?php class Post extends CI_Model { public function __construct(){ parent::__construct(); $this->load->database(); } public function get_all(){ $query = $this->db->get('posts',5); return $query->result(); } public function get_where($field, $value){ $query = $this->db->get_where('posts',array($field=>$value)); return $query->result(); } }

Auriez vous un moyen de réutiliser sans les recopier les function get_where et get_all dans tous les models. Je vois pas trop comment faire ni comment remplacer le 'posts' par une variable par exemple $table sans le passer dans les arguments de la function

Merci d'avance

2 réponses

JacobDelcroix, il y a 11 ans

Tu refais une classe qui va étendre de CI_Model et tu implémentes ces méthodes dans cette nouvelle classe. Ensuite tu étends ta classe Post par cette nouvelle classe. Comme ça tu peux déclarer un attribut $table dans Post. Et dans ta nouvelle classe, tu remplaces 'posts' par $this->table.

Pierre Ftn, il y a 11 ans

Merci beaucoup pour ta réponse rapide , j'avais pas eu l'idée mais c'est exactement ce que je cherchais