Arrays id为';在多对多的桌子上

Arrays id为';在多对多的桌子上,arrays,cakephp,many-to-many,relationship,Arrays,Cakephp,Many To Many,Relationship,我对CakePHP有问题。我尝试使用saveAll()函数设置一些数据。我对以下json字符串进行json_解码,并将结果传递给saveAll()方法 “PeopleOption”表是“SurveyAnswer”和“PeopleOptions”之间的多对多关系表。如您所见,我在SurveyAnswer中存储了一些数据,这非常有效。但是,用户可以选择多个人,因此“PeopleOption”多对多表,CakePHP不会将这些人存储在数据库中 奇怪的是:当我将PeopleOption数组更改为JSON

我对CakePHP有问题。我尝试使用saveAll()函数设置一些数据。我对以下json字符串进行json_解码,并将结果传递给saveAll()方法

“PeopleOption”表是“SurveyAnswer”和“PeopleOptions”之间的多对多关系表。如您所见,我在SurveyAnswer中存储了一些数据,这非常有效。但是,用户可以选择多个人,因此“PeopleOption”多对多表,CakePHP不会将这些人存储在数据库中

奇怪的是:当我将PeopleOption数组更改为JSON对象时,如下所示:

"PeopleOption": {
    "id":1
}
"PeopleOption": {
   "PeopleOption":[
       3,
       14,
       7,
       etc,
   ]
}
它工作得非常好,但显然只有一张唱片


如何传递必须存储在多对多关系表“PeopleOption”中的id数组?

虽然我还没有得到答案,但我自己找到了解决方案。使用saveAll()函数在多对多表中插入id数组时,应在JSON对象中使用嵌套数组,如下所示:

"PeopleOption": {
    "id":1
}
"PeopleOption": {
   "PeopleOption":[
       3,
       14,
       7,
       etc,
   ]
}

希望这能帮助任何遇到我的问题的人

任何帮助都将不胜感激!