Search code examples
phppackagelaravel-5.3breadcrumbslaravel-blade

[Breadcrumbs]Missing argument 3 for DaveJamesMiller\Breadcrumbs\ServiceProvider::{closure}()


Yeah I'm trying to use package Breadcrumbs from davejamemiller, already install and it works, but besides that im having trouble like this :

  1. Example : I have Home/User List/User Detail , in "User Detail" which is it sends URI : "user/view/{id}" and i already solve it, but also in User Detail it will show User's Product which is find by "ProductID" , so in code i type like :

Home -> User List -> User Detail -> Expert's View Product Detail the code is :

Breadcrumbs::register('product.detail', function($breadcrumbs, $user, $product)
{
    $breadcrumbs->parent('user.detail', $user);
    $breadcrumbs->push('Expert\'s View Product Detail', route('product.detail', $product));
});

it if i run it the error message says : Missing argument 3 for DaveJamesMiller\Breadcrumbs\ServiceProvider::{closure}()

by the way this is the breadcrumbs for User Detail : //Home -> User List -> User Detail

Breadcrumbs::register('user.detail', function($breadcrumbs, $user)
{
    $breadcrumbs->parent('user.list');
    $breadcrumbs->push('User Detail', route('user.detail', $user));
});

Can anybody help me figure it out :( ? Thanks in advance!


Solution

  • Double check the render call with Breadcrumb::render() in your Blade template:

    It seems you're not passing a $product object:

    {!! Breadcrumbs::render('product.detail', $user, $product) !!}
                                                     ^^^^^^^^ Did you forget this one?
    

    And try passing object ids instead of the whole object as argument to the route helper:

    route('product.detail', $product->id)
    route('user.detail', $user->id)