我是CakePHP&的新手刚学习它,我已经通过save()插入数据,但我不知道如何更新或删除MySQL数据库中的数据。我找到了很多东西,这对我来说是不可理解的..任何人都可以帮助我......
我的ordersController是 -
class OrdersController extends AppController
{
var $name = 'Orders';
var $helpers = array('Html', 'Form');
//var $ords = array('id', 'order_no' );
public function order()
{
$this->set('orders', $this->Order->find('all'));
}
public function add_order()
{
if (!empty($this->data)) {
if ($this->Order->save($this->data)) {
$this->redirect('/');
}
}
}
public function edit()
{
/////这是我的页面名称,在这里做什么.. ????
}
///我的模型订单是 -
App::uses('Model', 'Model');
class Order extends AppModel
{
var $name = 'Order';
}
//我不知道在视图中的edit.php中要做什么......
提前致谢
答案 0 :(得分:0)
只需在视图文件夹中创建文件edit.ctp
与你的add.ctp相同
然后在控制器中创建一个编辑功能 像
公共函数编辑($ id = null){ }
现在,从index.ctp中提供指向此edit.ctp的链接 喜欢
eg.
<?php echo $this->Html->link(__('Edit'), array('action' => 'edit', $order['Order']['Id'])); ?>
将解决您的目的。
嗨尝试此控制器功能
公共函数编辑($ id = null){
if (!$this->Order->exists()) {
throw new NotFoundException(__('Invalid order'));
}
if ($this->request->is('post') || $this->request->is('put')) {
if ($this->Order->save($this->request->data)) {
$this->Session->setFlash(__('Your order has been Modified Sucessfully'));
$this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash(__('Your order not been Modified Sucessfully.'));
}
}
else {
$this->request->data = $this->Order->read(null, $id);
}
}