Laravel Eloquent - Получить конкретный ряд и другие - PullRequest
0 голосов
/ 10 января 2019

В моей таблице пользователей я хочу получить права администратора и других активированных пользователей. на самом деле результат, который мне нужен, - это объединение этих двух результатов запроса:

User::where('user_name','admin')->first();
User::where('is_active',1)->get();

есть ли способ получить этот результат в одном запросе?

Ответы [ 5 ]

0 голосов
/ 10 января 2019

Извините за поздний ответ, все пропустили laravel из коробки method which accepts array

Eloquent Version
User::where(['user_name' => 'admin','is_active' => '1'])->first();

Другой метод

DB Facade Version

DB::table('users')->where(['user_name' => 'admin','is_active' => '1'])->first();

Надеюсь, это поможет

0 голосов
/ 10 января 2019

Вы должны попробовать это:

 $rsltUser = User::where('is_active',1)
       ->orWhere('user_name', 'admin')
       ->get();
0 голосов
/ 10 января 2019

Вам нужно использовать объединение, чтобы соединить два набора результатов.

$first = User::where('user_name','admin')->first();
$users = User::where('is_active',1)->union($first)->get();

Это должно дать вам первого администратора и всех активных пользователей.

На самом деле, поскольку они находятся на одной и той же таблице, ИЛИ также должно работать следующим образом:

$users = User::where('is_active',1)
             ->orWhere('user_name', 'admin')
             ->get();

Я оставлю обе части, так как обе будут работать.

0 голосов
/ 10 января 2019

Попробуйте это,

  User::where('is_active',1)
       ->orWhere('user_name', 'admin')
       ->get();
0 голосов
/ 10 января 2019
$query = User::where('is_active',1)->where('user_name','admin')->first();

Выше Query даст вам только одного активного пользователя, чье имя пользователя является администратором и активным.

Насколько я понимаю из вашего вопроса, вы хотите, чтобы все пользователи, которые являются "активными" и чье имя пользователя было "admin", попробуйте этот запрос ниже.

$query = User::where('is_active',1)->orWhere('user_name','admin')->get();

Надеюсь, что это может решить вашу проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...