Lid |
|
Beste Forumleden,
Ik heb een abstracte classe Resources en een Classe Permissions.
De classe Resource bevat een instantie van Zend_Db.
Permissions Extends Resources dus.
Nu heb ik in het model twee verschillende tabellen gedefinieerd namelijk in de abstracte classe de table resources en in permissions table permissions.
In de classe resources zit een methode getResources.
Wanneer ik nu in de controller getResources laad wordt de attribuut $_name overschreven maar dit moet niet. Ik wil dat in de Class Resources en Permissions twee tabellen invidueel geladen worden niet worden overschreven.
Someone knows?
Zie Code.
Permissions.php
class EnqueteCms_Model_Permisssion extends EnqueteCms_Model_Resources {
protected $_name = "permissions";
/**
* Method to save a data to an database
* @param array
* @param int
* @return void
*/
public function savepermission($permission)
{
foreach($permission as $perm) {
$this->insert($perm);
}
}
class EnqueteCms_Model_Permisssion extends EnqueteCms_Model_Resources { protected $_name = "permissions"; /** * Method to save a data to an database * @param array * @param int * @return void */ public function savepermission($permission) { foreach($permission as $perm) { $this->insert($perm); } }
En Resources.php
abstract class EnqueteCms_Model_Resources extends Zend_Db_Table {
protected $_name="resources";
public function getResources()
{
$row = $this->_db->fetchAll($this->_db->select()->from("resources"));
return $row;
}
...
}
abstract class EnqueteCms_Model_Resources extends Zend_Db_Table { protected $_name="resources"; public function getResources() { $row = $this->_db->fetchAll($this->_db->select()->from("resources")); return $row; } ... }
Heeft iemand enig idee? Ik los het nu met een workarround op, maar het kan ook anders. Code Workarround:
class EnqueteCms_Model_Resources extends Zend_Db_Table {
protected $_db;
public function __construct() {
$this->_db = Zend_Registry::get('dbAdapter');
}
/**
* Method to get all the resources
* @param string typeusers
* @return array
*/
public function getResources()
{
$row = $this->_db->fetchAll($this->_db->select()->from("resources"));
return $row;
}
}
class EnqueteCms_Model_Resources extends Zend_Db_Table { protected $_db; public function __construct() { $this->_db = Zend_Registry::get('dbAdapter'); } /** * Method to get all the resources * @param string typeusers * @return array */ public function getResources() { $row = $this->_db->fetchAll($this->_db->select()->from("resources")); return $row; } }
De attribuut moet dus niet worden overschreven.
|