我有以下输出,需要将其插入数据库:
Array
(
[Test] => Array
(
)
[Question] => Array
(
[0] => Array
(
[category_id] => 3
[answer_style_id] => 2
[Answer] => Array
(
[0] => Array
(
[capital_category_id] => 14
[correct] => 1
)
...
...
简单来说,每个测试有很多问题,每个问题有很多答案,每个关联的模型都有一个需要由 Cake 设置的外键(每个问题有一个 test_id,每个答案有一个 Question_id)。
问题是,当我 $this->Test->saveAll($data);
时,仅保存测试和问题,而不保存答案。
如何保存所有数据,并让 Cake 自动为每个关联模型设置外键?
谢谢!
最佳答案
我不确定,但我认为不可能保存第三层关系。
来自 Cakephp:
Saving related data with saveAll() will only work for directly associated models.
您必须检索第三级数据并将其与它们分开保存。
关于CakePHP保存三模型关系关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5591044/