/** * Все таблицы для хранения данных имеют префикс * */ protected function _setup() { parent::_setup(); $this->_cleanName = $this->_name; $this->_name = self::PREFIX_TABLE . $this->_name; if (false == array_key_exists($this->_cleanName, self::$setupedTables)) { $modelFields = new Modules_Publications_Model_Fields(); $this->_tableProfile = $modelFields->fetchAllByTableName($this->_cleanName); foreach ($this->_tableProfile as $row) { if ($row->list_values) { if (false == array_key_exists($row->list_values, self::$linkedData)) { if ('routes' == $row->list_values) { self::$linkedData[$row->list_values] = Modules_Router_Model_Router::getInstance()->getRoutesTreeHash(); } else { $model = new self($row->list_values); self::$linkedData[$row->list_values] = $model->fetchAll()->toArray(); } } self::$linkedFieldsTableData[$this->_cleanName . '_' . $row->name] = self::$linkedData[$row->list_values]; } } self::$setupedTables[$this->_cleanName] = $this->_tableProfile; } else { $this->_tableProfile = self::$setupedTables[$this->_cleanName]; } }
/** * Populate static properties for this table module. * * @return void * @throws Zend_Db_Table_Exception */ protected function _setup($config = array()) { // get the table name if (isset($config['name'])) { $this->_name = $config['name']; } if (!$this->_name) { $this->_name = self::$_inflector->underscore(get_class($this)); } $this->_name = self::$prefix . $this->_name; parent::_setup($config); }