Initialiser la classe Bootstrap
Bonjour, je débute avec Zend version 1.9 et j'utilise les configurations classique du "bootstrap" dans index.php comme suit :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
<?php
require_once 'Zend/Loader/Autoloader.php';
Zend_Loader_Autoloader::getInstance();
try {
/** Config */
$config = new Zend_Config_Ini("../application/configs/config.ini", "production");
Zend_Registry::set("config", $config);
/** Langue */
//$locale = new Zend_Locale(Zend_Locale::BROWSER);
$locale = $config->langue;
$translate = new Zend_Translate("csv", "../langues/fr.csv", "fr");
$translate->addTranslation("../langues/en.csv", "en");
$translate->setLocale($locale);
Zend_Registry::set("translate", $translate);
/** BDD */
$db = Zend_Db::factory($config->db);
$db->getConnection();
Zend_Db_Table::setDefaultAdapter($db);
/** Controller */
$front = Zend_Controller_Front::getInstance();
$front->setControllerDirectory("../application/controllers");
Zend_Layout::startMvc($config->layout);
$front->dispatch();
} catch (Zend_Db_Adapter_Exception $e) {
echo $e->getMessage();
} |
Maintenant, je veux utiliser une autre méthode : mettre tous ces configs dans la classe Bootstrap; pour cela, en suivant le tutoriel officiel de Zend pour la 2ème fois :aie: , j'utilise le script "zf.bat" qui génère des répertoires et des fichiers dont la classe en question.
Comment insérer dans le Bootstrap.php les paramètres de Zend_translate, les paramètres de configuration, la ressource de la base de données, mes propres formulaires qui se trouve dans "monprojet/application/forms" (il indique une erreur class MachinForm not found in IndexController ...). voilà à quoi ressemble le code jusqu'à présent :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
<?php
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
protected function _initAutoload()
{
$autoloader = new Zend_Application_Module_Autoloader(array(
'namespace' => 'Default',
'basePath' => dirname(__FILE__),
));
return $autoloader;
}
protected function _initDoctype()
{
$this->bootstrap('view');
$view = $this->getResource('view');
$view->doctype('XHTML1_STRICT');
}
} |
En lisant la doc officielle, mon impression est :calim2: . Je ne trouve pas très clair ce framework.