Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将项目添加到多人关系中?_Php_Yii - Fatal编程技术网

Php 如何将项目添加到多人关系中?

Php 如何将项目添加到多人关系中?,php,yii,Php,Yii,假设我有这个模型: class Pizza extends CActiveRecord { //... public function relations() { return array( 'toppings' => array(self::MANY_MANY, 'Topping', 'pizza_toppings(pizza_id,topping_id)') ) } //... } 而另一个 cl

假设我有这个模型:

class Pizza extends CActiveRecord {
    //...
    public function relations() {
        return array(
            'toppings' => array(self::MANY_MANY, 'Topping', 'pizza_toppings(pizza_id,topping_id)')
        )
    }
    //...
}
而另一个

class Pizza extends CActiveRecord {
    //...
    public function relations() {
        return array(
            'pizzass' => array(self::MANY_MANY, 'Pizza', 'pizza_toppings(topping_id,pizza_id)')
        )
    }
    //...
}
假设数据库中存在三个表(pizza、topping、pizza\u toppings),其中包含pizza\u toppings的指定字段

我试过这个:

$pizza = new Pizza();
$pizza->save(false);//save, no validate
$topping = new Topping();
$topping->save(false);//save, no validate
$pizza->toppings[] = $topping;
但当我以这种方式添加时,我会收到一份E_通知,说这样的任务没有效果


Q:如何将Yii 1.1.15元素添加到M2M关系中?

试试
$pizza->toppings=array($topping)

如果我没记错的话,他们禁止手动添加项目,但您可以随时更改整个数组

这是一个变通解决方案,我想它不是很干净,但它可以解决问题。如果有人有更好的解决方案,请张贴


我希望它有帮助

下次会测试它。目前我使用的是中间模型