@OxygenMan

Как починить пустую коллекцию в Laravel?

Здравствуйте, у меня такая проблема. Я подключаюсь к базе данных, затем подключаюсь к таблице, делаю выборку данных из таблицы по ID поста, затем создаю переменные, каждая из которых делает еще дополнительную выборку внутри выборки по ID поста, но все переменные кроме первых при проверке не содержат ничего, хотя в базе данных данные есть. В чем может быть проблема? Я в laravel бом-бом, только учусь
public function widgets($id) {
        $connectToBase2 = DB::connection('Base2'); 
        $getUser = $connectToBase2->table('users')->where('id', $id)->get();
        if ($getUser->isEmpty()) {
            abort(404);
        }
        else
        {
            $userSettings = $connectToBase2->table('userSettings')->where('id', $id); // $id юзера
            $getUserWiget0 = $userSettings->where('data', 999)->get(); // эти данные получаются
            $getUserWiget1 = $userSettings->where('data', 449)->get(); // здесь переменная пустая
        }
  • Вопрос задан
  • 109 просмотров
Решения вопроса 1
JhaoDa
@JhaoDa
LaravelRUS Team
Потому что если бы ты посмотрел уходящий в БД запрос (но тебе, видимо, лень) для последней переменной, то увидел бы что-то типа:
... where id = $id and data = 999 and data = 444 ...

Поэтому вспоминаем РНР и пишем:
$getUserWiget0 = (clone $userSettings)->where('data', 999)->get();
$getUserWiget1 = // догадаешься?
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы