2012-02-09 75 views
0

所以我使用cakephp,我对此有点新,而且我面临着某些问题。蛋糕PHP外键问题

1)我有两个表格,报告和问题。

的CakePHP:

report{id, type, details} 
issue{id,report_id, details} 

所以现在我试图让问题表的报告ID。我定义我的hasMany和属于关联关系如下:

class Report extends AppModel { 
    var $name = 'Report'; 

    var $hasMany = array(

'AtneIssue' => array(
'className' => 'Issue', 
'foreignKey' => 'report_id', 
'dependent' => true, 
     ) 

    ); 
} 

class Issue extends AppModel { 
     var $name = 'Issue'; 


     var $belongsTo = array(
      'Report' => array(
       'className' => 'Report', 
       'foreignKey' => 'report_id', 
       'conditions' => '', 
       'fields' => '', 
       'order' => '' 
     ) 
     ); 
    } 

但这导致SQL错误和数据不被保存到表。我已将索引设置为report_id以从Report中获取ID。

数据正在保存到报告中,但未保存到问题表中。

有人可以告诉我该怎么做? 在此先感谢。

+0

什么是sql错误? – 2012-02-09 09:50:19

+0

第一个字母在这里用数字替换。不知道为什么...我想如何发布数据但现在我无法获得报告的ID和数据被破坏如下:查询:INSERT INTO'atne_issues'('status','issue_owner',''问题')VALUES('2nhold','2ricsson','2IQ - IP地址不正确','2sdfasdf') – 2012-02-09 21:58:42

回答

0

第一个字母在这里用数字代替。不知道为什么......我想如何发布数据但现在我无法获得报告的ID和数据被损坏如下:

Query: INSERT INTO `atne_issues` (`status`, `issue_owner`, `issue_reason`, `problem`) VALUES ('2nhold', '2ricsson', '2IQ - IP address incorrect', '2sdfasdf') 
+0

嗯,你可能会用代码中的某处代替第一个字母?如果没有所有的代码可见,很难说。 – 2012-02-11 09:58:57