返回顶部

[文摘] cakephp在windows下的配置方法,cakephp学习实例

[复制链接]
awagink 显示全部楼层 发表于 2008-11-22 16:16:43 |阅读模式 打印 上一主题 下一主题
运行环境: winxp+apache2.055+php5.1.1+mysql5
下载cake_php
解压
目录结构为
/cake/
      /app
      /cake
      /vendors
      /index.php
      /.htaccess
设置apache的httpd.conf
1.将网站根目录指向app下的webroot
DocumentRoot "E:/web/cake/app/webroot"
2.加载重写功能
LoadModule rewrite_module modules/mod_rewrite.so
3.AllowOverride一定要设成all
<Directory "E:/web/cake/app/webroot">
     Options FollowSymLinks
    AllowOverride ALL   
</Directory>
4.修改database.php(由database.php.defalt另存一份得到)
class DATABASE_CONFIG
{
var $default = array('driver' => 'mysql',
         'connect' =>
'mysql_connect',
         'host' => 'localhost',
         'login' => 'root',
         'password' => '',
         'database' => 'blog',
         'prefix' => '');
var $test = array('driver' => 'mysql',
        'connect' => 'mysql_connect',
        'host' => 'localhost',
        'login' => 'root',
        'password' => '',
        'database' => 'blog-test',
        'prefix' => '');
)
$test这个可以不要

5.修改 /app/config/core.php
define('AUTO_SESSION', true);
改为
define('AUTO_SESSION', false);
否则要出现sessions错误

6.实例程序
   1).建表
    CREATE TABLE players (
    id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    firstname VARCHAR(50) NOT NULL,
    position VARCHAR(25) NOT NULL,
    team_id SMALLINT(6)
    )
    CREATE TABLE teams (
    id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    }
  
2).控制器(controller)
   
   /app/controllers/players_controller.php   
     <?php
     class PlayersController extends AppController
     {
         var $scaffold;
     }
     ?>
/app/controllers/teams_controller.php
   <?php
     class TeamsController extends AppController
     {
         var $scaffold;
     }
   ?>
3).模型(model)
   /app/models/player.php
   <?php
     class Player extends AppModel
     {
         var $name = 'Player';
         var $belongsTo = array('Team' =>
                  array('className'     => 'Team',
                      'conditions'    => '',
                      'order'         => '',
                      'foreignKey'    => 'team_id'
                  )
              );
     }
    ?>
   /app/models/team.php
   <?php
     class Team extends AppModel
     {
         var $name = 'Team';
         var $displayField = 'name';
     }
    ?>
运行:
http://localhost/cake/teams
可以添加,修改,删除,列表
这个利用了scaffolds,没有自己写视图.可以去掉$scaffold,控制器的方法和视图都要自己写了

另外还有一点不爽,视图文件的扩展名都是thtml,不能用dw可视编辑,不过可以把cake\libs\controller\controller.php里的 var $ext='.thtml'改成html就可以直接用html视图文件了

此外,在生成的html页面里,总是有cakephp的标志(上面有大大的标题CakePHP Rapid Development
,下面还有一个cakephp的图标),虽然是cakephp的东西,但放到自己的项目中看起来总是不顺眼,要去掉
的话就修改
cake\libs\view\templates\layouts\default.thtml,这个是视图文件的通用模板框架(带头部和脚部)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

纳速健身网成立于2006年8月,是国内优秀健身运动网站,现拥浏览人数超30万。网站是集养生、武术、太极拳和健身气功等多种健身项目于一体的多功能交流平台。平台提供大量优质的教学视频、伴奏音乐(太极拳晨练音乐,广场舞音乐,健身气功音乐)、图文教程、运动科普和经验分享,为健身爱好者提供完善的运动指导平台。
  • 纳速QQ群乙:151815303
  • 纳速QQ群丙:79104490
  • 微信交流群:微信好友搜索【nasuwang】加小纳微信进群交流健身知识,备注【纳速】
  •                     或者扫描页面底部右侧二维码添加小纳微信>>>
  • 微信公众号

  • 微信群客服交流

  • Copyright © 2006-2021, 纳速健身网. | | 辽ICP备13002388号-1 辽公安网备21050202000005号公安网备号 纳速武术-乙 QQ