2011-07-27 3 views
0

je me suis problème quand sauver belongtoproblème CakePHP avec Save belongsTo

class Script extends AppModel { 
    var $name = 'Script'; 
    var $belongsTo = array(
    'ScriptCatagories' => array(
     'className' => 'ScriptCatagories', 
     'foreignKey' => 'script_catagories_id', 

function add_script() { 
    pr($this->data); 
    if (!empty($this->data)) { 
     $this->Script->create(); 
     $this->data['Script']['script_catagories_id'] = $this->Script->scriptCategory->id; 
     $this->data['Script']['user_id'] = $this->Auth->user('id'); 
     if ($this->Script->save($this->data)) { 
      $this->Session->setFlash(__('The script has been saved', true)); 
      $this->redirect(array('action' => 'script_index')); 
     } else { 
      $this->Session->setFlash(__('The script could not be saved. Please, try again.', true)); 
     } 
    } 

    pr($scriptCatagories = $this->Script->ScriptCatagories->find('list')); 
    $this->set(compact('scriptCatagories')); 
} 

quand cliquez sur Enregistrer

Array 
(
[Script] => Array 
    (
     [name] => fdfvvds 
     [description] => dfvdfvdfvdf 
     [tags] => 
    ) 
    ) 
    Array 
    (
    [0] => performance 
    [1] => cleanup 
    ) 

question

 $this->data['Script']['script_catagories_id'] = $this->Script->scriptCategory->id; 

je dois sauver categoryid à la table de script, mais Je ne sais pas pour l'obtenir
merci

Répondre

0
var $belongsTo = array(
'ScriptCatagories' => array(
    'className' => 'ScriptCatagories', 
    'foreignKey' => 'script_catagories_id', 

d'abord, il ne faut pas entre parenthèses proches. Et il devrait être singulier ScriptCategory, aussi la clé étrangère script_category_id (juste pour suivre la convention). Et vous avez mal orthographié la catégorie (vous avez $this->Script->scriptCategory->id; plus tard dans le code)

+0

désolé en question mais en vrai code est complet mais en question je l'ai perdu –

Questions connexes