我有 Codeigniter 设置将前缀 kms_ 添加到我的活动记录查询中。但是,我正在尝试使用两个 ON 条件进行连接,并且它没有预先添加它们。
现在我必须像这样手动添加它们:
$this->db->join('site_items', 'kms_site_items.item_id = kms_items.id AND kms_site_items.site_id = 1', 'left');
Run Code Online (Sandbox Code Playgroud)
我可以用不同的方式写这个以便正确添加表前缀吗?
有没有办法让这样的事情工作:
$this->db->join('site_items', 'site_items.item_id = items.id AND site_items.site_id = 1', 'left');
Run Code Online (Sandbox Code Playgroud)
您可以像这样手动获取当前数据库前缀:
$prefixed_tablename = $this->db->dbprefix('tablename');
Run Code Online (Sandbox Code Playgroud)
所以你可以这样做:
$this->db->join('site_items', $this->db->dbprefix('site_items') . '.item_id = ' . $this->db->dbprefix('items') . '.id AND ' . $this->db->dbprefix('site_items') . '.site_id = 1', 'left');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7026 次 |
| 最近记录: |