表单提交后500 Internet服务器错误

时间:2017-03-27 09:41:25

标签: php forms laravel laravel-5

我从头开始了laracast教程laravel 5.4。现在我正在参加第12场会议并且遇到了我的第一个错误。提交空表单后,我获得500 Internet服务器错误。我尝试了很多,但我无法修复它。

以下是相关代码:

web.php

Route::get('/', 'PostsController@index');
Route::get('/posts/create', 'PostsController@create');
Route::post('/posts', 'PostsController@store');

PostController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Post;
class PostsController extends Controller
{
    public function index()      
    {
      return view('posts.index');
    }

     public function show()
    {
        return view('posts.show');
    }
    public function create()
    {
        return view('posts.create');
    }
        public function store()
    {
            $this->validate(request, [
                'title' => 'required',
                'body'=> 'required'
            ]);
            Post::create(request(['title', 'body']));
            return redirect('/');          

    }

}

create.blate.php

@extends('layouts.master')


@section ('content')

<h1>Publish a Post</h1>
<hr>
<form method="POST" action="/posts">
    {{ csrf_field() }}
    <div class="form-group">
    <label for="title">Title</label>
    <input type="text" class="form-control" id="title" name="title">
  </div>
  <div class="form-group">
    <label for="body">Body</label>
    <textarea type="text" class="form-control" id="body" name="body" ></textarea>
  </div>
  <button type="submit" class="btn btn-primary">Publish</button>
</form>

@endsection

post.php中

<?php

namespace App;


class Post extends Model
{

}

Model.php

<?php

namespace App;

use Illuminate\Database\Eloquent\Model as Eloquent;

class Model extends Eloquent
{
    protected $guarded = [];
}

希望有人可以帮助我,laravel不要给我一个错误。

祝你好运

2 个答案:

答案 0 :(得分:0)

如果laravel没有给你一个错误。你可以在你的代码中设置php内部错误提示,看看发生了什么。

error_reporting (E_ALL & ~E_NOTICE);

答案 1 :(得分:0)

我找到了错误并修复了它......

PostController.php

取代:

$this->validate(request, [ 'title' => 'required', 'body'=> 'required' ]);

使用:

$this->validate(request(), [ 'title' => 'required', 'body'=> 'required' ]);