Можно ли вызвать все, одновременно находя идентификатор в Laravel? - PullRequest
0 голосов
/ 10 июля 2020

Я использую sh для отображения имени категории в разделе заголовка, однако я не могу вызвать специфику c Category :: find ($ id), так как у меня также есть Category :: all () . Это работает, однако я не могу отобразить название категории.

Вот мой код. Контроллер

public function categorized($id)
{
    $categories = Category::all();
    $category = Category::find($id);
    $businesses = Business::where('category_id', $category->id)->get()->sortBy('name');
    if (Auth::check()) {
    $userId = Auth::user()->id;
    $users = User::where('id', $userId)->get();

    return view('directories.categorized', [
        'categories' => $categories,
        'businesses' => $businesses,
        'users' => $users,
        ]);
    } else {
        return view('directories.categorized', [
            'categories' => $categories,
            'businesses' => $businesses,
        ]);
    }
}

Blade

@extends('layouts.app')

@section('title', "$categories")

@section('content')
<div style="margin-top: 40px;">
    @foreach ($businesses as $business)
    <a href='{{ url("/businessprofile/$business->id/".Str::slug($business->name)) }}'>
        <img src='{{ asset("storage/$business->logo") }}'>
        <h5>{{ $business->name }}</h5>
    </a>
    @endforeach
</div>

@ endsection

Если я поставил $ Categories-> name, он говорит, что свойство name не найдено, но если поставить его foreach просто предоставляет первые данные в таблице категорий.

В то время как $ Categories, он просто возвращает массив моей таблицы категорий

1 Ответ

1 голос
/ 10 июля 2020

В вашем контроллере вернуть представление с категорией. 'category' => Category::find($id)

Я не знаю, нужны ли вам все категории, но, по крайней мере, вы должны пройти одну.

В представлении лезвия вызовите $category->name.

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