php - Codeigniter Eloquent 查询关系

标签 php mysql codeigniter eloquent

我有两个这样的表:

用户:users_id |姓名 | users_roles_id

users_roles:users_roles_id |角色

我想加入这些表。我尝试了以下方法:

use Elegant\Model as Eloquent;

class User extends Eloquent {
    protected $table = 'users';

    function getRoles($userId){
        User::join('users_roles', 'users_roles.users_roles_id', '=', 'users.users_roles_id')
            ->select('*')
            ->get();    
    }

    public function user_role() {
        return $this->belongsTo('users_roles','users_roles_id');
    }
}

但我不知道如何加入这些来显示它。 谢谢

最佳答案

我做了

    class User extends Eloquent {
        protected $table = 'users';

        function getRoles($userId){
            return $this->where('id', $userId)->join('users_roles', 'users.users_roles_id = users_roles.users_roles_id')->get();  
        }
    }

它正在工作 ;-)

关于php - Codeigniter Eloquent 查询关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38944166/

相关文章:

mysql - 哪个表现更好? mysql 中带有自动增量的主键还是复合键?

php - 修复未关闭的 HTML 标签

php - 查明用户是否已阅读帖子

php - MySQL 按时间顺序存储为 HH :MM:SS

php - 使用 zend view helper 的下拉菜单

php - 使用多个 ON 条件加入查询在 codeigniter 中不起作用?

php - slider 未显示 : setREVStartSize is not defined

mysql - 在 MySQL 中连接父/子节点表时出现问题 - 减少结果集

mysql - 将数据插入数据库时​​出现问题

php - 如何在 Codeigniter 中设置或仅上传 CSV 类型