Class App \ Articles not found

So, I am using laravel 5.2, and I renamed my model from “Articles” to “Article”, I did the same for the class as well as for the controller. But I have an error in the show method in my controller.

"ReflectionException on line Container.php 738:"

Here is my controller:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;
use App\Http\Requests\ArticleRequest;
use App\Http\Controllers\Controller;
use App\Article;
use App\User;
use App\Tag;
use Auth;

class ArticlesController extends Controller
{

public function __construct()
{
    $this->middleware('auth');
}

public function index()
{
    $articles = article::latest('created_at')->get();

    return view('articles.home', compact('articles'));
}

public function show(Article $article)
{
    return view('articles.show', compact('article'));
}

public function create()
{
    $tag = Tag::lists('name', 'id');

    return view('articles.create', compact('tag'));
}

public function store(ArticleRequest $request)
{
    $article = Auth::user()->article()->create($request->all());

    $article->tags()->attach($request->input('tags'));

    flash('Your Article Has Been Successfully Saved','Good Job');

    return redirect('articles');
}

public function edit(Article $articles)
{
    return view('articles.edit', compact('articles'));
}

public function update(Article $articles, ArticleRequest $request)
{
    $articles->update($request->all());

    return redirect('articles');
}

}

Here is my model:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Article extends Model
{
    protected $table = "articles";

    protected $fillable = [
        'title',
        'body',
        'published_at',
        'user_id'
    ];

    public function user()
    {
        return $this->belongsTo('App\User');
    }

    public function tags()
    {
        return $this->belongsToMany('App\Tag')->withTimestamps();
    }
}

Here is the registered route:

 Route::resource('articles','ArticlesController');

Finally, here is my show.blade.php:

@extends('app')

@section('content')

<h2>{{ $article->title }}</h2>

<div class="body">
    <p>{{ $article->body }}</p>
</div>

@stop

Please, help...

+4
source share
1 answer

If you use explicit route model binding, have you updated the RouteServiceProvidernew class name?

, articles, Article, Laravel . Route::resource('article'), .

+6

All Articles