2013-12-10 6 views
0

내 메뉴 모델에서 사용자가 채우지 않은 경우 슬러그 필드를 채우려고합니다.beforeCavePHP에서 saveSave 콜백이 작동하지 않습니다.

Model/Menu.php 

    public function beforeSave($options = array()){ 
      if(
       isset($this->data[$this->alias]['name']) && 
       !isset($this->data[$this->alias]['slug']) 
      ){ 
        //than fill the slug field in the db for the user. 
       $this->data[$this->alias]['slug'] = strtolower(Inflector::slug($this->data[$this->alias]['name'], '-')); 
      } 
     }//end function 

그러나이 방법을 사용하지 않으면 모든 데이터가 저장됩니다.

답변

2

이 방법을 전혀 사용하지 않습니다. 그렇다면 CakePHP Book에있는 지침에 따라 return true;을 입력하지 않았으므로 저장되지 않습니다.

다른 모델의 연관성을 통해 메뉴 데이터를 저장하는 것이 좋습니다.이 경우 이전에는 IT의 이전 저장을 사용합니다.

관련 문제