2014-10-02 120 views
0

我使用蛋糕PHP来集成我的东西;但在我看来,它没有显示模型验证错误。我认为我的代码中遗漏了一些小的想法,但没有发现。 下面是我的模型,视图和控制器代码:我的视图中没有显示蛋糕PHP模型验证

Model: 
class Category extends Model { 

    var $validate = array(
     'title' => array(
      'rule' => 'notEmpty', 
      'message' => 'Title is required' 
     ) 
    ); 
} 



View: 
<?php 
    echo $this->Form->create('Category', array('action'=>'add', 'enctype' => 'multipart/form-data')); 
?> 
    <fieldset> 
     <legend>Add new category</legend> 
     <?php   
      echo $this->Form->input('title');   
     ?> 
    </fieldset> 
<?php 
    echo $this->Form->submit('Add Category'); 
    echo $this->Form->end(); 
?> 

Controller: 
class CategoriesController extends AppController { 
    var $helpers = array('Form', 'Html', 'Js'); 
    function add() {   
     $this->loadModel('Category'); 
     $this->Category->set($this->data); 
     $this->Category->save($this->data);      
     if(!$this->Category->validates()){ 
      $errors = $this->Category->validationErrors;     
     }   
    } 
} 

Thanks in advance. 

回答

0
if(!$this->Category->save($this->data)){ 
     $errors = $this->Category->validationErrors;     
    } 

你只请检查是否数据已保存与否。如果没有,则处理验证错误。将错误设置为视图或仅在控制器本身进行调试。 这可能会帮助你。

+0

虽然[一行答案](http://meta.stackoverflow.com/questions/266954/one-line-answers)是可以接受的,但它们通常会导致答案被路由到Review Queue(* qv *) 。另外,有时他们不被社区所接受。通常提供一个简短的解释来解释答案如何解决问题。 – jww 2014-10-02 10:48:24

+0

谢谢你提及。 @jww – Ajanth 2014-10-02 11:23:54

+0

谢谢。它现在适用于我的解决方案。 – TRB 2014-10-06 08:53:26