小编see*_*iue的帖子

Laravel 查询生成器获取自定义属性

我试图从查询中获取自定义属性( https://laravel.com/docs/5.5/eloquent-mutators#defining-an-accessor )。

现在我有:

用户.php

public function getViewUrlAttribute()
{
    return route('admin.users.view', ['id' => $this->id]);
}

public function role()
{
    return $this->belongsTo('App\Role')->withDefault([
        'name' => 'User'
    ]);
}
Run Code Online (Sandbox Code Playgroud)

用户控制器.php

public function dataTable(Request $request)
{
    $length = $request->has('length') ? $request->input('length') : 10;
    $orderDirection = $request->input('orderDirection');
    $searchValue = $request->input('search');

    $users = User::select('id', 'name', 'email', 'created_at')->with('role:name')->limit($length);

    if ($request->has('orderBy')) {
        if ($request->has('orderDirection')) {
            $users = $users->orderBy($request->input('orderBy'), $request->input('orderDirection') > 0 ? 'asc' : 'desc');
        } else {
            $users = $users->orderBy($request->input('orderBy'), 'desc');
        }
    }

    return $users->get();
}
Run Code Online (Sandbox Code Playgroud)

退货 …

php laravel eloquent laravel-5.5

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

eloquent ×1

laravel ×1

laravel-5.5 ×1

php ×1