cakephp将外键传递给控制器中的add方法

cakephp将外键传递给控制器中的add方法,cakephp,Cakephp,我有两张桌子和两个号码。人与数字有许多联系,而数字与人有一种归属感。我在persons controller中还有一个view方法,它显示有关此人的信息(包括与他相关的所有数字)。我还想添加一个链接,为此人添加一个新号码。我成功地将person的主键传递给add方法,但无法将其包含到add视图中的表单中。我尝试将它放在$this->data中,并向视图中添加一个隐藏字段,然后使用set()将其作为默认值分配给视图中的一个隐藏字段,但没有效果。任何想法都非常感谢。我更喜欢在GET请求中传递个人ID

我有两张桌子和两个号码。人与数字有许多联系,而数字与人有一种归属感。我在persons controller中还有一个view方法,它显示有关此人的信息(包括与他相关的所有数字)。我还想添加一个链接,为此人添加一个新号码。我成功地将person的主键传递给add方法,但无法将其包含到add视图中的表单中。我尝试将它放在$this->data中,并向视图中添加一个隐藏字段,然后使用set()将其作为默认值分配给视图中的一个隐藏字段,但没有效果。任何想法都非常感谢。

我更喜欢在GET请求中传递个人ID

在你的数字控制器

function add($personId = null) {
   //code
   $this->set('personId', $personId);
}
在您的视图中,修改您的表单帮助器,以将其发布到另一个URL,并在其末尾添加个人ID

echo $this->Form->create('Number', array('url' => '/admin/number/add' . $personId));
现在,当表单发布数据时,
$personId
被传递给该方法,因此您不需要通过数据变量访问它