首先建立数据库cake_ext,并执行如下sql文:
CREATETABLE`companies`( `id`int(11)NOTNULLauto_increment, `company`varchar(50)NOTNULL, `price`decimal(8,2)NOTNULL, `change`decimal(8,2)NOTNULL, `lastudp`dateNOTNULL, PRIMARYKEY(`id`) )ENGINE=MyISAMAUTO_INCREMENT=8DEFAULTCHARSET=utf8; ------------------------------ --Records ------------------------------ INSERTINTO`companies`VALUES('1','3mCo','71.72','0.02','2008-10-21'); INSERTINTO`companies`VALUES('2','AlcoaInc','29.01','0.42','2008-10-20'); INSERTINTO`companies`VALUES('3','AT&TInc.','31.61','-0.48','2008-10-21'); INSERTINTO`companies`VALUES('4','BoeingCo.','75.43','0.53','2008-10-13'); INSERTINTO`companies`VALUES('5','UnitedTechnologiesCorporation','63.26','0.55','2008-10-09'); INSERTINTO`companies`VALUES('6','IntelCorporation','19.88','0.31','2008-10-15'); INSERTINTO`companies`VALUES('7','ExxonMobilCorp','68.10','-0.43','2008-10-17');
如下图所示建立工程:
数据库配置文件如下:
classDATABASE_CONFIG { var$default=array('driver'=>'mysql', 'connect'=>'mysql_connect', 'host'=>'localhost', 'login'=>'root', 'password'=>'root', 'database'=>'cake_ext', 'prefix'=>''); var$test=array('driver'=>'mysql', 'connect'=>'mysql_connect', 'host'=>'localhost', 'login'=>'root', 'password'=>'root', 'database'=>'cake_ext', 'prefix'=>''); }
companies_controller.php:
<?php classCompaniesControllerextendsAppController { var$name='Companies'; functionindex() { $this->set('companies',$this->Company->findAll()); } functionview($id=null) { $this->Company->id=$id; $this->set('company',$this->Company->read()); } } ?>
company.php:
<?php classCompanyextendsAppModel { var$name='Company'; } ?>
index.thtml:
<h1>Testcompanies</h1> <table> <tr> <th>Id</th> <th>company</th> <th>price</th> <th>change</th> <th>lastupdate</th> </tr> <?phpforeach($companiesas$company):?> <tr> <td><?phpecho$company['Company']['id'];?></td> <td> <?phpecho$html->link($company['Company']['company'],"/companies/view/".$company['Company']['id']);?> </td> <td><?phpecho$company['Company']['price'];?></td> <td><?phpecho$company['Company']['change'];?></td> <td><?phpecho$company['Company']['lastudp'];?></td> </tr> <?phpendforeach;?> </table>
view.thtml:
<h1>Company:<?phpecho$company['Company']['company']?></h1> <p><small>Id:<?phpecho$company['Company']['id']?></small></p> <p>Price:<?phpecho$company['Company']['price']?></p> <p>Change:<?phpecho$company['Company']['change']?></p> <p>LastUpdate:<?phpecho$company['Company']['lastudp']?></p>
访问http://localhost/cakephp/companies即可运行测试程序。
本代码参考自官方自带例子:http://book.cakephp.org/view/326/The-Cake-Blog-Tutorial