Solar manual 1.4. 配置系统
- 打开SYSTEM/config.php文 件,在该文件末尾的return语句之前,给文件中的$config数组添加新键值。
- 查找前端控制器配置项,并通过修改“classes”键指向的值来指定应用类名的前缀。
<?php
// front controller
$config['Solar_Controller_Front'] = array(
'classes' => array('Acme_App', 'Solar_App'),
// ...
'explain' => true,
);
Note
把Solar\_App也压入应用类栈中,这使Solar在第一次定位应用时,不 仅会查找Acme\_App,而且也会查找Solar\_App。
- 查找模型目录配置项,并指定应用类名的前缀。
<?php
// model catalog
$config['Solar_Sql_Model_Catalog']['classes'] = array('Acme_Model');
- 给$config数组添加新元素,指定应用所使用的SQL适配器,并做相关配置。对于SQLite,使用下面这种配置:
<?php
// the SQL adapter class to use
$config['Solar_Sql']['adapter'] = 'Solar_Sql_Adapter_Sqlite';
// configure the SQL adapter class
$config['Solar_Sql_Adapter_Sqlite'] = array(
'name' => "$system/sqlite/acme.sq3", // the database file to use
);
Note
变量$system在SYSTEM/config.php文件中定义,它的值是 SYSTEM目录。
对于MySQL,使用下面这种配置:
<?php
// the SQL adapter class to use
$config['Solar_Sql']['adapter'] = 'Solar_Sql_Adapter_Mysql';
// configure the SQL adapter class
$config['Solar_Sql_Adapter_Mysql'] = array(
'host' => 'localhost', // the database server host
'name' => 'database', // the database name
'user' => 'username', // authenticate as this user
'pass' => 'password', // authenticate with this password
);
Note
对于PostgreSQL,用Solar\_Sql\_Adapter\_Pgsql 替换适配器名及配置项的键名。
最后,配置文件的最后一部分应该像这样:
<?php
/**
* project overrides
*/
// front controller
$config['Solar_Controller_Front'] = array(
'classes' => array('Acme_App', 'Solar_App'),
'disable' => array(),
'default' => 'hello',
'rewrite' => array(),
'routing' => array(),
'explain' => true,
);
// model catalog
$config['Solar_Sql_Model_Catalog']['classes'] = array('Acme_Model');
// the SQL adapter class to use
$config['Solar_Sql']['adapter'] = 'Solar_Sql_Adapter_Sqlite';
// configure the SQL adapter class
$config['Solar_Sql_Adapter_Sqlite'] = array(
'name' => "$system/sqlite/acme.sq3", // the database file to use
);
/**
* done!
*/
return $config;