0
我不太清楚如何用CakePHP完成此任务。我有3种型号:蛋糕模型协会
ReportType: id/name
Example Data:
1/Report1
2/Report2
ReportData: id/report_type_id (matches ReportType)/row_number (matches row number in CSV)/data
Example Data:
1/1/1/longstring1
2/1/1/longstring1-2
3/1/1/longstring1-3
4/1/2/longstring2
5/1/3/longstring3
6/1/4/longstring4
PaymentData: id/report_type_id (matches ReportType)/row_number (matches row number in CSV)/payment_amount
Example Data:
1/1/1/5
2/1/2/6
3/1/3/78
4/1/5/9
ReportType:
HasMany: ReportData, PaymentData
实例查询:
$this->ReportType->contain('PaymentData');
$payment_data = $this->ReportType->find('first');
眼下,这将产生:
[ReportType]
id => 1
name => Report1
[PaymentData]
[0] =>
id => 1
report_type_id => 1
row_number => 1
payment_amount => 5
[1] =>
id => 1
report_type_id => 1
row_number => 2
payment_amount => 6
(and so on)
我想做什么就能做的是为每个PaymentData行,能够匹配reportData中的report_type_id和row_number匹配的行(我只需要1行)。例如,我想返回的数据是:
[ReportType]
id => 1
name => Report1
[PaymentData]
[0] =>
id => 1
report_type_id => 1
row_number => 1
payment_amount => 5
[ReportData] => (matched by report_type_id and row_number for PaymentData above)
[0] =>
id => 1
report_type_id => 1
row_number => 1
data => longstring1
[1] =>
id => 1
report_type_id => 1
row_number => 2
payment_amount => 6
[ReportData] => (matched by report_type_id and row_number for PaymentData above)
[0] =>
id => 4
report_type_id => 1
row_number => 2
data => longstring2