FatalThrowableError(E_ERROR)在null上调用成员函数reply()

When I'm trying to update post it's updated successfully but, when it returns it shows error here-

NB: Replies under this post where I'm trying to update.

public function show($slug)
{
    $discussion = Discussion::where('slug', $slug)->first();

    $best_answer = $discussion->replies()->where('best_answer', 1)->first();

    return view('discussions.show')
                    ->with('d', $discussion)
                    ->with('best_answer', $best_answer);
}

Edit and Update

public function edit($slug)
{
    return view('discussions.edit', ['discussion'=> Discussion::where('slug', $slug)->first()]);
}

public function update($id)
{
    $this->validate(request(),[
        'title' => 'required',
        'content' => 'required'
    ]);

    $d = Discussion::find($id);

    $d->title = request()->title;
    $d->content = request()->content;

    $d->save();

    Session::flash('success', 'Discussion updated');

    return redirect()->route('discussion', ['slug', $d->slug]);
}