基于DooPHP开发网站的一些初始设定

1,目录结构更改
由于DooPHP的目录层次比较深(相对我这样一个人前后端都独立来写而言),来回切换目录很麻烦,所以最好是将protected目录及此目录下的global拆分。protected目录移动有官方的教程,参见如何把protected目录移到web root以外

global因为是静态资源可以直接移动。
2,表前缀及generate mode操作
如果数据库表有前缀又不想改表名或每次loadModel都要写上带前缀的参数,可以在dooframework/db/DooModelGen.php里修改gen_mysql和genMySQL函数,

public static function gen_mysql($comments=true, $vrules=true, $extends='DooModel', $createBase=true, $baseSuffix='Base', $chmod=null, $path=null,$tablePrefix=null) {
    self::genMySQL($comments, $vrules, $extends, $createBase, $baseSuffix, $chmod, $path,$tablePrefix);
}


 public static function genMySQL($comments=true, $vrules=true, $extends='DooModel', $createBase=true, $baseSuffix='Base', $chmod=null, $path=null,$tablePrefix=null) 

在95行$classname=’’;下增加

if($tablePrefix){
                    $temptbl = str_replace($tablePrefix,'',$tblname);
                }else{
                     $temptbl = $tblname;
                                        }

然后在你所开发的应用目录下,修改yourapp/controller/MainController.php gen_model函数

public function gen_model(){
Doo::loadCore(‘db/DooModelGen’);
DooModelGen::genMySQL(true,true, ‘DooModel’, false, ‘Base’, null,null,’wp_’);
}

DooModelGen::genMySQL的最后一个参数即为表前缀,’wp_’是wordpress安装时默认的表前缀。 3,数据库持久连接 config/db.conf.php 的注释示例写的都是使用持久连接,数组的最后一项都为true,这会造成一些问题。您可能像我一样没注意这最后一项,其实注释上面几行有这样一行说明$dbconfig[ Environment or connection name] = array(Host, Database, User, Password, DB Driver, Make Persistent Connection?); 持久连接依赖于服务器php.ini设置,mysql.allow_persistent 默认为”1” 但也可能被服务器管理员修改。所以如果出现数据库连接失败试试把true改为false.

/* $dbconfig[‘dev’] = array(‘localhost’, ‘database’, ‘root’, ‘1234’, ‘mysql’, true);
* $dbconfig[‘prod’] = array(‘localhost’, ‘database’, ‘root’, ‘1234’, ‘mysql’, true);
*/