做前端怎能完全不通后端?哈哈,开个玩笑而已。
【Project 1】
万事开头难果然不假:从切完他们天马行空的设计,到实现他们各种需要的特效,再到现在用zf敲后台跑通数据库。整整一周时间。接下来就是等他们上传数据测试,和让头帮忙完善了。
上帝啊,我人生中第一个完全自己一手搞定的项目终于诞生了,不是没写过后台,但是从来没有上线发布,都是很少的代码的小case。然后用了从来没用过的zf框架,这个我听了两小时视频的东东。。。一边看手册一边google,这个项目总算走到最后一步了。。。。
come on!~听说后面还有二期和三期,加油加油!!!!!!!!等项目完工再来整理这一堆乱码
1、创建zf1.12的空项目
用zendstudio创建空项目,然后用zf.bat以该项目文件夹作为目录,创建zf1.12空项目。
2、空项目创建之后
【1】根据需要,在application.ini文件中进行相关配置。示例如下:/* 配置项一定要放在production之下 */
[production] phpSettings.display_startup_errors = 1 /* 系统配置,用于调试 */ 本周开始做,一直没开这三个选项,盲人摸象般解决了各种问题,但时间浪费了不少。phpSettings.display_errors = 1 /* 系统配置,用于调试 */ resources.frontController.params.displayExceptions = 1 /* 系统配置,用于调试 */ includePaths.library = APPLICATION_PATH "/../library" bootstrap.path = APPLICATION_PATH "/Bootstrap.php" bootstrap.class = "Bootstrap" appnamespace = "Application" resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers" resources.frontController.params.displayExceptions = 0 resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts" /* 以下为自定义共用配置项*/website.title = "**********"website.keywords = "**********" website.description = "**********" website.path = '/catholicProject/gunuoqi/public/' iDatabase.project_id = "**********" iDatabase.password = "**********"
【2】在bootstrap.php中进行如下设置:
/* 引入全局使用的自定义常量文件 */
protected function _initConst () { require 'constants.php'; require 'mongoConstants.php'; } protected function _initConfig() { $this->_config = $this->getOptions(); Zend_Registry::set('config', $this->_config); } protected function _initMongoDB () { include('iDatabase.php'); $mongoDB = new iDatabase($this->_config['iDatabase']['project_id'], $this->_config['iDatabase']['password']); Zend_Registry::set('mongoDB', $mongoDB); //var_dump($mongoDB->find('group',array())); }
【3】ajax请求:
注意js的ajax请求地址可以在头部写入前缀,后面进行拼接。该前缀由php输出,即在application.ini中定义的配置项 website.path 的值。该值的设置见【1】所示。
【4】布局文件的简单使用:
范例如下:
其中需要注意的是:图片,js,css的地址,改地址可以由website.path 来拼接。也可以采取《》中所示第二种兼容性方法。
其实,该方法提取出来的值跟上面website。path所设置的值一般情况下都是以根目录为顶级目录。doctype() ?><?php echo $this->config["website"]["description"].$this->title?> config["website"]["description"]?>"> config["website"]["keywords"]?>"> public;?>/css/public.css"> public;?>/css/style?>.css">