我有一种情况,我已经更新了所有数据库表,以包含一个名为“siteid”的新字段。因此,我想在codeigniter生成的每个查询中执行where子句。
如果不在每个模型中手动添加where子句,有没有办法做到这一点? 这是一个例子
$this->db->select('username');
$this->db->where('userid');
$this->db->get('user');
$query->result_array();
我想为每个查询添加一个新的where子句,以便它像这样工作
$this->db->select('username');
$this->db->where('userid');
$this->db->where('siteid');
$this->db->get('user');
$query->result_array();
答案 0 :(得分:2)
在core /文件夹中创建MY_Model.php,并使所有模型扩展为MY_Model。
然后添加以下行:
$this->db->where('siteid');
进入MY_Model.php的构造函数。
有关扩展核心类的更多信息,请访问here。
答案 1 :(得分:1)
如果不手动操作,我不确定是否有办法。
您可以使用搜索并将当前方法替换为搜索位置的关联数组方法。 Documentation link
搜索
$this->db->where('userid');
并替换为
$this->db->where(['userid' => $userid, 'siteid' => $siteid]);