2011-08-30 36 views
1

一直在努力使這項工作一小時左右,到目前爲止,即時通訊目前使用CakePHP 2和除該代碼一切工作完美CakePHP的Aro->保存()在用戶模型中afterSave()不使用時工作

這裏如下我有什麼用戶模型內部

var $actsAs = array('Acl' => array('type' => 'requester')); 

public function bindNode($user) 
{ 
    # ativando o simplified node mode 
    # trabalharemos apenas com permissões referentes ao grupo e não a cada usuário 
    # 
    return array('model' => 'Grupo', 'foreign_key' => $user['User']['grupo_id']); 
} 

public function parentNode() # utilizado para determinar um relacionmamento Pai -> Filho 
{ 
    if (!$this->id && empty($this->data)) 
     return null; 

    if (isset($this->data['User']['grupo_id'])) 
     $groupId = $this->data['User']['grupo_id']; 
    else 
     $groupId = $this->field('grupo_id'); 

    if (!$groupId) 
     return null; 
    else 
     return array('Grupo' => array('id' => $groupId)); 
} 

public function afterSave($created) # depois que as infos deste usuario sao salvas 
{ 
    # Funcao para permitir atualizar os grupos dos usuarios 
    if (!$created) 
    { 
     $parent = $this->parentNode(); 
     $parent = $this->node($parent); 
     $node = $this->node(); 
     $aro = $node[0]; 
     $aro['Aro']['parent_id'] = $parent[0]['Aro']['id']; 
     $this->Aro->save($aro); 
    } 
} 

Basicaly他做的一切就好了,用正確的GROUP_ID更新表的用戶,如果我使用debug($ ARO)我可以看到它正在嘗試與更新正確的信息。但是$ this-> Aro-> save($ aro)看起來並不奏效,Cake也不顯示任何錯誤信息,嘗試了幾種調試方式,但是沒有顯示錯誤,它根本不會更新aro桌。

人是否有這是爲什麼hapenning任何想法?

PS:對了Grupo而不是集團和grupo_id代替GROUP_ID的也是在桌子上是正確的,它只是從英文翻譯葡萄牙上只有2例。

回答

0

嘗試打印(使用PR($ ARO))打印$ ARO數組的內容。如果它包含任何無效的字段名稱(屬性不在數據庫表中),保存操作將失敗。

相關問題