这里声明一点,上例中不小心把数据库表中lastupd字段错打成lastudp,本例子予以更正。
除上诉字段数据库与上例一致。
工程仍沿用上例,如下图:
代码依次为:
database.php:与上例一致。
companies_controller.php:
<?php
class companiescontroller extends appcontroller
{
var $name = 'companies';
function index()
{
$this->set('companies', $this->company->findall());
}
function view($id = null)
{
$this->company->id = $id;
$this->set('company', $this->company->read());
}
function add()
{
if (!emptyempty($this->data))
{
if ($this->company->save($this->data))
{
$this->flash('your post has been saved.','/companies');
}
}
}
function edit($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('your post has been updated.','/companies');
}
}
}
function delete($id)
{
$this->company->del($id);
$this->flash('the post with id: '.$id.' has been deleted.', '/companies');
}
}
?>
company.php:
<?php
class company extends appmodel
{
var $name = 'company';
var $validate = array(
'company' => valid_not_empty,
'price' => valid_not_empty,
'change' => valid_not_empty,
'lastupd' => valid_not_empty
);
}
?>
index.thtml:
<h1>test companies</h1>
<table>
<tr>
<th>id</th>
<th>company</th>
<th>price</th>
<th>change</th>
<th>last update</th>
</tr>
<?php foreach ($companies as $company): ?>
<tr>
<td><?php echo $company['company']['id']; ?></td>
<td>
<?php echo $html->link($company['company']['company'], "/companies/view/".$company['company']['id']); ?>
<?php echo $html->link('delete', "/companies/delete/{$company['company']['id']}", null, 'are you sure?')?>
</td>
<td><?php echo $company['company']['price']; ?></td>
<td><?php echo $company['company']['change']; ?></td>
<td><?php echo $company['company']['lastupd']; ?></td>
</tr>
<?php endforeach; ?>
</table>
<p>
<?php echo $html->link('add', "/companies/add"); ?>
</p>
view.thtml:
<h1>company: <?php echo $company['company']['company']?></h1>
<p><small>id: <?php echo $company['company']['id']?></small></p>
<p>price: <?php echo $company['company']['price']?></p>
<p>change: <?php echo $company['company']['change']?></p>
<p>lastupdate: <?php echo $company['company']['lastupd']?></p>
<br/>
<p>
<?php echo $html->link('edit', "/companies/edit/".$company['company']['id']); ?>
</p>
add.thtml:
<h1>add company</h1>
<form method="post" action="<?php echo $html->url('/companies/add')?>">
<p>
company:
<?php echo $html->input('company/company', array('size' => '40'))?>
<?php echo $html->tagerrormsg('company/company', 'company is required.') ?>
</p>
<p>
price:
<?php echo $html->input('company/price', array('size' => '40'))?>
<?php echo $html->tagerrormsg('company/company', 'price is required.') ?>
</p>
<p>
change:
<?php echo $html->input('company/change', array('size' => '40'))?>
<?php echo $html->tagerrormsg('company/change', 'change is required.') ?>
</p>
<p>
last update:
<?php echo $html->input('company/lastupd', array('size' => '40'))?>
<?php echo $html->tagerrormsg('company/lastupd', 'last update is required.') ?>
</p>
<p>
<?php echo $html->submit('save') ?> <?php echo $html->link('return', "/companies/index"); ?>
</p>
</form>
edit.thtml:
<h1>edit company</h1>
<form method="post" action="<?php echo $html->url('/companies/edit')?>">
<?php echo $html->hidden('company/id'); ?>
<p>
company:
<?php echo $html->input('company/company', array('size' => '40'))?>
<?php echo $html->tagerrormsg('company/company', 'company is required.') ?>
</p>
<p>
price:
<?php echo $html->input('company/price', array('size' => '40'))?>
<?php echo $html->tagerrormsg('company/company', 'price is required.') ?>
</p>
<p>
change:
<?php echo $html->input('company/change', array('size' => '40'))?>
<?php echo $html->tagerrormsg('company/change', 'change is required.') ?>
</p>
<p>
last update:
<?php echo $html->input('company/lastupd', array('size' => '40'))?>
<?php echo $html->tagerrormsg('company/lastupd', 'last update is required.') ?>
</p>
<p>
<?php echo $html->submit('save') ?> <?php echo $html->link('return', "/companies/index"); ?>
</p>
</form>
如此访问http://localhost/cakephp/companies即可测试代码。
【说明】:
本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!