PHP foreach l oop получает 2 вместо одного laravel клинка - PullRequest
0 голосов
/ 26 марта 2020

Я делаю посты для своего сайта, и теперь я хочу, чтобы людям понравилась эта публикация. Но когда им нравится пост (если есть 0 лайков), вы видите одно пустое сердце. Но когда посту понравятся несколько человек, там будет больше сердец.

Вот мой код

@foreach($post->likes as $likes)
    @if($likes->where('user_id', Auth::User()->id))
        <i onclick="window.location.href = '/blog/like/{{ $post->id }}';"
           class="fa fa-heart liked"></i>
    @else
        <i onclick="window.location.href = '/blog/like/{{ $post->id }}';"
           class="far fa-heart"></i>
    @endif
@endforeach

В приведенном выше коде у вас есть класс ai с надписью «Мне нравится». Я хочу один из этих предметов на моем клинке, а не несколько. Кто-нибудь может мне помочь?

enter image description here

Должно быть одно сердце

1 Ответ

1 голос
/ 26 марта 2020
                    @if(count($post->likes) !== 0)
                        <i onclick="window.location.href = '/blog/like/{{ $post->id }}';"
                           class="@if($post->likes->contains('user_id', Auth::User()->id) === true)fa fa-heart liked @else far fa-heart @endif"></i>
                    @else
                        <i onclick="window.location.href = '/blog/like/{{ $post->id }}';"
                           class="far fa-heart"></i>
                    @endif

Я исправил это, выполнив это выше ^^ Я удалил foreach и добавил метод contains () и проверил, верно ли это, теперь это работает.

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