我与Product hasmany Page有模特关系。当我添加新产品然后转到视图时,我可以向该产品添加新的产品页面。但是,单击该链接不会将当前产品ID传递给prodpages / add页面。我希望这样做,以便当您去添加prodpage时,已根据您正在查看的先前产品选择了相关的产品ID。
我认为归结为在产品视图中编辑链接并在prodpages / add /之后传递id以追加。那是对的吗?这是:
<?php echo $this->Html->link(__('New Prodpage'), array('controller' => 'prodpages', 'action' => 'add'));?> </li>
如何将产品ID包括在内?
当谈到Prodpages控制器时......这是我到目前为止添加功能的内容..
public function add($product_id) {
if ($this->request->is('post')) {
$this->Prodpage->create();
if ($this->Prodpage->save($this->request->data)) {
$this->Session->setFlash(__('The prodpage has been saved'));
$this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash(__('The prodpage could not be saved. Please, try again.'));
}
}
$products = $this->Prodpage->Product->find('list');
$this->set(compact('products'));
$this->data['Prodpage']['product_id'] = $product_id;
}
这对控制器有用吗?
答案 0 :(得分:2)
是的,只需将其添加到您的链接
即可echo $this->Html->link(__('New Prodpage'), array(
'controller' => 'prodpages',
'action' => 'add',
$product_id
));
您遗漏了更多视图,但这假设您的视图有变量$product_id
。