在我的cakephp项目中,保存功能不起作用?

时间:2010-05-02 07:47:45

标签: cakephp save

我的控制器操作是:

function add() {  
 if (!empty($this->data)) {
  $this->Customer->create();
  if ($this->Customer->save($this->data)) {
    $this->Session->setFlash('A new Customer has been added');
    $this->redirect(array('action'=>'index'));
  } 
  else {    
   $this->Session->setFlash('The customer cannot be added this time. Try again later.');
   $this->redirect(array('action'=>'index'));
  }
 }
}

我的模特是:

class Customer扩展AppModel {

var $name = 'Customer';
var $validate = array(
   'name' => array(
    'length'=> array(
     'rule' => array('between', 4,50),
         'message' => 'Name must be minimum 4 and maximum 50 characters long.'    
         ),                 
    'checkUnique'=> array(
       'rule' => 'isUnique',
       'message' => 'This Name is already registered'    
    )
  ));

这是我的观点:

<div class="customers form">
<?php echo $form->create('Customer',array('action'=>'add'));?>
 <fieldset>
   <legend><?php __('Add Customer');?></legend>
 <?php
  echo $form->input('Customer.name');
  echo $form->input('Customer.balance',array('type'=>'hidden','default'=>0)); 
 ?>
 </fieldset>
<?php echo $form->end('Submit');?>
</div>

每次我提交表单时都会溅出: 这次无法添加客户。稍后再试。

1 个答案:

答案 0 :(得分:1)

对于隐藏的输入字段,请在视图中使用“值”而不是“默认”:

$form->input('Customer.balance', array('type' => 'hidden', 'value' => 0));