0

我是 CakePHP 的新手,我想将其他数据保存到我的 HABTM 连接表中。我读过,应该切换到hasMany through这个,但蛋糕食谱中也有以下注释:

Changed in version 2.1.

You can set unique setting to keepExisting circumvent losing extra data during the save operation. See unique key in HABTM association arrays.

这听起来好像从 2.1 开始就有可能。(我使用最新的 2.4.2)与此相关的每个问题(“如何在 HABTM 关系中保存额外数据”)至少存在两年。那么现在是否有可能在 HABTM 连接表中保存其他数据,例如“ingredients_recipes.amount”(“20ml 牛奶 for whatEverRecipe”)?

如果是这样,怎么做?到目前为止,我得到的最接近的是NULL插入的amount,或者插入的金额而不是插入的recipes_id

如果没有,如何将 HABTM 设置转换为 hasMany?我也很感谢一个好的和最新的教程,它解释了如何设置它,因为我真的不明白食谱写了什么。

谢谢

4

1 回答 1

0

我的数据

数组([配方] => 数组([id] => 58)[成分] => 数组([数量] => 50 cl [名称]=>牛奶))

我的观点

<?php echo $this->Form->create('Ingredient');?>
    <?php echo $this->Form->input(
        'Recipe.id',
        array('type' => 'hidden', 'value' => $recipe_id)); ?>
    <?php echo $this->Form->input('Ingredient.name'); ?>
Form->input('Ingredient.amount'); ?> Form->end('添加成分'); ?>

我的功能添加

public function add() {
    //save habtm
    if ($this->Ingredient->save($this->request->data)) {       
    }
}

使用此代码,您将与食谱相关联

在蛋糕书上找到这个代码:和 ctrl+f habtm

于 2013-10-28T15:52:22.320 回答