Задать вопрос
@IvanKalinin

Почему проверка в Laravel происходит только в первый раз?

Всем доброго.
Имеется Таблица с рецептами, таблица с юзерами и таблица "избранного", в которой указан id пользователя и id рецепта.

На главной странице выводятся собственно сами рецепты
в шаблоне индексной страницы
@foreach ($recipeCards as $recipeCard)
		@include('template.recipePreview')
@endforeach


и в подключаемом шаблоне самого рецепта проводится такая проверка
@if (Auth::check())
                <?php $count = Favorite::where('dishId', '=', $recipeCard->id)->where('id', '=', Auth::user()->id)->count(); ?>
                @if ($count <> 0)
                    <li class="favorite black"></li>
                @else
                    <li class="favorite gray"></li>
                @endif
            @endif


т.е. если рецепт у пользователя в избранном ставится черная иконка, если нет, то серая.

Почему то $count == 1 только при условии что первый выводимый рецепт в избранном и только для него.
В остальных случаях $count == 0. Почему - понять так пока и не получилось.
  • Вопрос задан
  • 2272 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 1
@andreyqin
Может быть потому что вы Auth::user()->id сравниваете с id, а надо с каким-нибудь user_id?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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