1

我有类似的商店结构

1:Shop有很多Categories

2:Categories有1对多SizesProducts

3:每个都product属于一个Category

4:AsSizes属于,Categories所以每个product属于 acategory将具有相同的大小。

现在我的问题是在产品添加表单中。

我已经形成了包含产品的输入字段和一个选择框来选择Category.

一旦我选择了一个类别,就会创建一个 Ajax 请求,它sizes作为分配给所选类别的输入框返回。输入框将用于输入产品每种尺寸的价格。(由于输入字段将在 Ajax 中生成,我如何使用表单助手?)

现在我希望点击保存按钮时,产品信息应该存储在产品表中,价格应该保存在

Product_Prices包含product_id, size_id, price列的表。

我应该如何命名我的输入框?我应该如何调用 save 方法以便正确保存信息?

4

1 回答 1

2

保存一个尺寸

//$this->Form->create('Product');
$this->Form->input('category_id');

保存多尺寸

//$this->Form->create('Shop');

$this->Form->input('category_id');

或使用复选框代替列表

$this->Form->input('category_id', array('multiple' => 'checkbox')); 

如果要将另一个模型的属性与主模型一起保存,请添加模型名称(别名)作为前缀并使用saveAssociated()or saveAll()

echo $this->Form->input('ProductPrice.price');

见:http ://book.cakephp.org/2.0/en/models/saving-your-data.html#model-saveall-array-data-null-array-options-array

于 2013-01-21T15:55:32.733 回答