用户
 找回密码
 入住 CI 中国社区
搜索
查看: 4904|回复: 8
收起左侧

dilicms插件钩子在存在多模型的时候需要判断模块才可以操作!

[复制链接]
发表于 2011-8-1 16:05:39 | 显示全部楼层 |阅读模式
如果有几个模型,我只在一个模型插入例如:发布者角色,$this->_ci->_admin->role;到字段m_role,这个时候其他模型也会相没有定义该字段的错,开始感觉判断一下就可以了处理,可是感觉每次都要写判断,又感觉这种方式特别的灵活,我想咨询一下!我应该如何灵活应对这个呢?
发表于 2011-8-1 16:27:44 | 显示全部楼层
本帖最后由 jeongee 于 2011-8-1 16:28 编辑

不知道你咋判断的,你发个我看看
PS:提问题的时候,要尽可能的详细一点
 楼主| 发表于 2011-8-1 16:36:16 | 显示全部楼层
jeongee 发表于 2011-8-1 16:27
不知道你咋判断的,你发个我看看
PS:提问题的时候,要尽可能的详细一点

老大我的意思是哪个你弄得太灵活了,功能强大无比!

我在插件 register_before_insert

   if($this->_ci->input->get('model') == news)
   {
    $data['m_role']=$this->_ci->_admin->role;

   }else{
   
   return false;
   }

每次一个模型判断一回可不可以直接传个模型参数进来,不用判断
发表于 2011-8-1 16:40:14 | 显示全部楼层
mvc999 发表于 2011-8-1 16:36
老大我的意思是哪个你弄得太灵活了,功能强大无比!

我在插件 register_before_insert

你判断的太草率了,得有模型类型+模型名称才能确定1个模型。
即需要:if($this->_ci->input->get('model') == news && $this->_ci->uri->rsegment(1)=='content')
或者是category_content
 楼主| 发表于 2011-8-1 16:46:43 | 显示全部楼层
哦!郁闷!呵呵!老是粗心大意!我问一下老大可不可以吧判断隐藏在你的插件钩子里面呢?

function register_before_insert(& $data){}
可以不可以扩展成
function register_before_insert(& $data ,$modelstyle='',$model=''){}
这样如果不好!老大个给我个理由!
发表于 2011-8-1 16:47:24 | 显示全部楼层
本帖最后由 jeongee 于 2011-8-1 16:49 编辑
mvc999 发表于 2011-8-1 16:36
老大我的意思是哪个你弄得太灵活了,功能强大无比!

我在插件 register_before_insert

还有哦,不是一个模型对应一个插件的,一个插件可以管N个模型的,你也可以自己写个函数帮助你把比较完成的,呵呵
 楼主| 发表于 2011-8-1 16:49:34 | 显示全部楼层
呵呵!,求知识要不要命的询问,才可以成长!
发表于 2011-8-1 16:51:02 | 显示全部楼层
本帖最后由 jeongee 于 2011-8-1 16:51 编辑
mvc999 发表于 2011-8-1 16:46
哦!郁闷!呵呵!老是粗心大意!我问一下老大可不可以吧判断隐藏在你的插件钩子里面呢?

function registe ...

呵呵,其实不用传递的,由于这2个值都是存在的,只不过调用的方式长了点,你可以写几个函数来简化操作嘛
 楼主| 发表于 2011-8-1 16:55:59 | 显示全部楼层
jeongee 发表于 2011-8-1 16:51
呵呵,其实不用传递的,由于这2个值都是存在的,只不过调用的方式长了点,你可以写几个函数来简化操作嘛 ...

高兴高兴!每次提问都有收获,还不小,呵呵!

本版积分规则