2017-02-18 74 views
2

首先,我是一个总的Laravel noob,但我想学习它。我从教程https://laravel.com/docs/5.2/quickstart开始,但安装了5.4。这就是它出错的地方,因为路线的位置与Laravel 5.2版相比有所不同,本教程基于此。因此,在我的根文件夹,我有/路由加入在/routes/web.php教程代码:在基本的Laravel 5.4教程中找不到类“任务”

<?php 
/* 
|-------------------------------------------------------------------------- 
| Web Routes 
|-------------------------------------------------------------------------- 
| 
| Here is where you can register web routes for your application. These 
| routes are loaded by the RouteServiceProvider within a group which 
| contains the "web" middleware group. Now create something great! 
| 
*/ 

/** 
* Show Task Dashboard 
*/ 

Route::get('/', function() { 
    $tasks = Task::orderBy('created_at', 'asc')->get(); 
    return view('tasks', [ 
     'tasks' => $tasks 
    ]); 
}); 

/** 
* Add New Task 
*/ 
Route::post('/task', function (Request $request) { 
    $validator = Validator::make($request->all(), [ 
     'name' => 'required|max:255', 
    ]); 

    if ($validator->fails()) { 
     return redirect('/') 
      ->withInput() 
      ->withErrors($validator); 
    } 

    $task = new Task; 
    $task->name = $request->name; 
    $task->save(); 

    return redirect('/'); 
}); 

/** 
* Delete Task 
*/ 
Route::delete('/task/{task}', function (Task $task) { 
    $task->delete(); 

    return redirect('/'); 
}); 

?> 

我做了一个应用程序/ Task.php,其中包含了(空)任务类和我数据库设置正确,据我所知。

FatalErrorException in web.php line 21: 
Class 'Task' not found 

不过,我得到了上面的错误,提示我的命名空间有问题,但我似乎无法正确理解。

顺便说一句,为了让安装正常工作,我将根文件夹中的server.php重命名为index.php,并将.htaccess从/ public复制到我的根文件夹中。

任何帮助,将不胜感激!

+1

使用'$任务= \软件\任务::排序依据( 'created_at', 'ASC') - >获得();'。 –

回答

5

使用正确的命名空间

/** 
    * Show Task Dashboard 
    */ 

    Route::get('/', function() { 
     $tasks = \App\Task::orderBy('created_at', 'asc')->get(); 
     return view('tasks', [ 
      'tasks' => $tasks 
     ]); 
    }); 

    /** 
    * Add New Task 
    */ 
    Route::post('/task', function (Request $request) { 
     $validator = Validator::make($request->all(), [ 
      'name' => 'required|max:255', 
     ]); 

     if ($validator->fails()) { 
      return redirect('/') 
       ->withInput() 
       ->withErrors($validator); 
     } 

     $task = new \App\Task; 
     $task->name = $request->name; 
     $task->save(); 

     return redirect('/'); 
    }); 

    /** 
    * Delete Task 
    */ 
    Route::delete('/task/{task}', function (\App\Task $task) { 
     $task->delete(); 

     return redirect('/'); 
    }); 
+0

谢谢你。你知道在拉拉维尔发生了什么特别的变化,导致了这种情况的发生吗? – limco

相关问题