这里声明一点,上例中不小心把数据库表中lastupd字段错打成lastudp,本例子予以更正。
除上诉字段数据库与上例一致。
工程仍沿用上例,如下图:
代码依次为:
database.php:与上例一致。
companies_controller.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()); } functionadd() { if(!emptyempty($this->data)) { if($this->Company->save($this->data)) { $this->flash('Yourposthasbeensaved.','/companies'); } } } functionedit($id=null) { if(emptyempty($this->data)) { $this->Company->id=$id; $this->data=$this->Company->read(); } else { if($this->Company->save($this->data['Company'])) { $this->flash('Yourposthasbeenupdated.','/companies'); } } } functiondelete($id) { $this->Company->del($id); $this->flash('Thepostwithid:'.$id.'hasbeendeleted.','/companies'); } } ?>company.php:
classCompanyextendsAppModel { var$name='Company'; var$validate=array( 'company'=>VALID_NOT_EMPTY, 'price'=>VALID_NOT_EMPTY, 'change'=>VALID_NOT_EMPTY, 'lastupd'=>VALID_NOT_EMPTY ); } ?>index.thtml:
Testcompanies
Id | company | price | change | lastupdate |
---|---|---|---|---|
echo$company['Company']['id'];?> | echo$html->link($company['Company']['company'],"/companies/view/".$company['Company']['id']);?> echo$html->link('Delete',"/companies/delete/{$company['Company']['id']}",null,'Areyousure?')?> | echo$company['Company']['price'];?> | echo$company['Company']['change'];?> | echo$company['Company']['lastupd'];?> |
view.thtml:
Company:echo$company['Company']['company']?>
Id:echo$company['Company']['id']?>
Price:echo$company['Company']['price']?>
Change:echo$company['Company']['change']?>
LastUpdate:echo$company['Company']['lastupd']?>
echo$html->link('edit',"/companies/edit/".$company['Company']['id']);?>add.thtml:
AddCompany
edit.thtml:
EditCompany
如此访问http://localhost/cakephp/companies即可测试代码。