title: Trouble with a "Missing argument 1 for ProjectsController::show()"
body: <p>I am currently working with a projects controller and I keep getting this error message:</p>
  
  <pre><code>Missing argument 1 for ProjectsController::show()
  </code></pre>
  
  <p>I do not understand what could be wrong because it looks like my code matches the book and my other working controllers.  It was working fine until I added the Repository.</p>
  
  <p>Below is the controller code:</p>
  
  <pre><code>use Web\Records\ProjectRecord;
  use Web\Forms\ProjectForm;
  use Web\Repositories\ProjectRepository;
  class ProjectsController extends Controller
  {
  
  protected $projectForm;
  protected $projectRepository;
  
  
  public function __construct(ProjectForm $projectForm, ProjectRepository $projectRepository)
  {
      $this-&gt;ProjectForm = $projectForm;
      $this-&gt;ProjectRepository = $projectRepository;
  }
  
  
  /**
   * Display a listing of the resource.
   * GET /project
   *
   * @return Response
   */
  public function index()
  {
      return View::make('projects.create');
  }
  
  /**
   * Store a newly created resource in storage.
   * POST /projects
   *
   * @return Response
   */
  public function store()
  {
      $data = Input::all() ;
      $this-&gt;projectForm-&gt;validate($data);
  
      $project = new Project;
      $project-&gt;name = $data['name'];
      $project-&gt;save();
  
      return 'project created';
  }
  
  /**
   * Display the specified resource.
   * GET /project_creation
   *
   * @return Response
   */
  public function show($project_id) &lt;- This is where it says the error is
  {
      return View::make('projects.show')-&gt;with([
          'project' =&gt; $this-&gt;projectRepository-&gt;findBy($project_id),
      ]);
  }
  </code></pre>