PHP版本:5.6.33
Laravel版本:5.2.45
我正在关注Laravel网站https://laravel.com/docs/5.2/quickstart上的“快速入门”教程。
我在“创建任务”一节中https://laravel.com/docs/5.2/quickstart#creating-the-task
我的代码看起来像网站上的代码:
componentDidMount() {
setTimeout(this.props.history.push('/'), 3000);
}
模型看起来也和完成版一样https://github.com/laravel/quickstart-basic/blob/master/app/Task.php:
// 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('/');
});
因此,当我尝试添加任务时,出现以下错误:
namespace App;
use Illuminate\Database\Eloquent\Model;
class Task extends Model
{
//
}
当我将模型更新为以下模型时,它将起作用:
FatalErrorException in Inflector.php line 265:
syntax error, unexpected ':', expecting ';' or '{'
但是根据文档,我不必这么做。
Eloquent将假定Flight模型在航班中存储记录 桌子。
https://laravel.com/docs/5.6/eloquent#eloquent-model-conventions
为什么要在模型中为表专门命名才能使其工作?