关联模型删除操作的问题

浏览:2595 发布日期:2012/03/04
- 普通 - 未处理
[i=s] 本帖最后由 翱翔白鹭 于 2012-3-4 17:21 编辑 [/i]

关联删除操作时,单条删除时没有问题,但删除多条主键ID时出错!
比如:
D("Category")->relation(true)->delete("3");
会删除user和其关联数据,
但D("Category")->relation(true)->delete('3,4,5');
却只能删除Category里的数据,关联表(Article)里的数据不删除,查看日志后发现多条删除时生成SQL里的关联id='',下面是日志记录:
[quote]SQL: DELETE FROM `lm_category` WHERE ( `cate_id` IN ('13','12') ) [ RunTime:0.001217s ]
[ 2012-03-04T17:12:05+08:00 ] /category/save | NOTIC: [8] Undefined index: mapping_name RelationModel.class.php 第 265 行.
[ 2012-03-04T17:12:05+08:00 ] /category/save | NOTIC: [8] Undefined index: cate_id RelationModel.class.php 第 271 行.
[ 2012-03-04T17:12:05+08:00 ] /category/save | SQL: SHOW COLUMNS FROM `lm_article` [ RunTime:0.003952s ]
[ 2012-03-04T17:12:05+08:00 ] /category/save | SQL: DELETE FROM `lm_article` WHERE cate_id='' [ RunTime:0.001132s ][/quote]
关联模型定义:class CategoryModel extends RelationModel 
{
        // 自动验证设置
        protected $_validate         =         array(
                array('cate_name','require','分类名称必须填写!',1)
        );
        
        protected $_link = array(
                'Article' => array(
                        'mapping_type' => HAS_MANY,
                        'class_name'   =>'Article',
                        'foreign_key' => 'cate_id',
                )
        );
}
评论(
后面还有条评论,点击查看>>