$result=D('Cate')->relation(true)->delete('60');模型: namespace Common\Model;
use Think\Model\RelationModel;
class CateModel extends RelationModel{
//定义关联关系
protected $_link=array(
'brand' => array(
'mapping_type' => self::MANY_TO_MANY, //多对多关系
'foreign_key' => 'cate_id', //主表在中间表中的字段名称
'relation_foreign_key' => 'brand_id', //副表在中间表中的字段名称
'mapping_fields' => 'id,name,recommend,sort',
),
'style' => array(
'mapping_type' => self::MANY_TO_MANY,
'foreign_key' => 'cate_id',
'relation_foreign_key' => 'style_id',
'mapping_fields' => 'id,name,sort',
),
'color' => array(
'mapping_type' => self::MANY_TO_MANY,
'foreign_key' => 'cate_id',
'relation_foreign_key' => 'color_id',
'mapping_fields' => 'id,name,sort',
),
'price' => array(
'mapping_type' => self::MANY_TO_MANY,
'foreign_key' => 'cate_id',
'relation_foreign_key' => 'price_id',
'mapping_fields' => 'id,name,sort',
),
'attr' => array(
'mapping_type' => self::MANY_TO_MANY,
'foreign_key' => 'cate_id',
'relation_foreign_key' => 'attr_id',
'mapping_fields' => 'id,name,pid,level,status',
),
);结果是只删除了主表。日志里也只有主表的记录,这是为何?
SQL: SHOW COLUMNS FROM `soft_cate` [ RunTime:0.005000s ]
SQL: DELETE FROM `soft_cate` WHERE ( `id` = 60 ) [ RunTime:0.035002s ]
最佳答案