Не могу сделать каскадный выбор в z-song laravel -admin - PullRequest
0 голосов
/ 21 января 2020

Laravel Версия: 5.8

Laravel -admin: 1.7.9

Я не могу сделать каскадный выбор

У меня есть таблицы:

пользователи: идентификатор, имя

категории: идентификатор, имя

category_users: идентификатор, категорий_ид, идентификатор_пользователя

модели:

class User extends Authenticatable {

 public function category()
    {
        return $this->belongsToMany(Categories::class, 'categories_users', 'categories_id');
    }
}



class Categories extends Model {

public function users()
    {
        return $this->belongsToMany(User::class, 'categories_users');
    }
}

I нужно выбрать каскад:

$form->select('user_id', 'User')->options($seller)->load('categories_id', '/admin/api/users')->required();

$form->select('categories_id', 'Categories of user')->required();

но это не работает !!!

Контроллер:

public function getData(Request $request){

        $user_id = $request->get('q');

        return User::find($user_id)->category()->get(['id', DB::raw('name as text')]);
    }

1 Ответ

0 голосов
/ 24 января 2020
public function getData(Request $request){

    $user_id = $request->get('q');

    $q = DB::table('categories_users')->where('user_id', $user_id)->pluck('categories_id');

    $categories = Categories::whereIn('id', $q)->get(['id', DB::raw('name as text')]);

    return $categories;
}

Это работает!

...