Laravel:资源控制器' store'方法不产生结果,没有错误

时间:2017-02-04 04:31:31

标签: php laravel crud

我试图在我建立的网站的后端实施类别创建表单。我们的想法是让它与现有类别的索引位于同一页面上。但是,目前,创建系统什么都不做。它不会返回错误;直接查询时,数据库中没有显示任何内容;并且根据重定向,页面上没有任何新内容。因为没有反馈意见,我正在摸索这条路线的不同/错误与我之前为帖子创建机制所做的非常相似的路线。无论如何,这里是相关的创作形式:

<form method="POST" action="{{ route('categories.store') }}" data-parsley-validate>
        <div class="form-group">
          <label name="name">Category Name:</label>
          <input id="name" name="name" class="form-control" required maxlength="255">
        </div>
        <input type="submit" value="Create" class="btn btn-lg btn-block">
        <input type="hidden" name="_token" value="{{ Session::token() }}">
</form>

这是&#39;商店&#39;来自CategoryController的方法:

public function store(Request $request)
    {
        $this->validate($request, array(
          'name' => 'required|max:255'
        ));

        $category = new Category;
        $category->name = $request->name;
        $category->save();

        Session::flash('success', 'Category has been created!');

        return redirect()->route('categories.index');
    }

这是web.php路由文件:

<?php

Route::get('/', 'PageController@getIndex');
Route::get('/contact', 'PageController@getContact');

Route::resource('posts', 'PostController');
Route::resource('categories', 'CategoryController');
Route::get('blog/{slug}', 'PostController@show')->where('slug', '[\w\d\-\_]+');
Route::get('blog', 'PostController@index');

Auth::routes();

Route::get('/home', 'HomeController@index');

?>

同样,我根本没有收到任何错误消息,只是提交按钮什么也没做。提前谢谢!

2 个答案:

答案 0 :(得分:0)

试试这个

return redirect('categories.index')->withErrors($validation);

您也可以查看

Display errors

答案 1 :(得分:0)

自己发现错误。在相关视图的顶部,有一个用于显示现有类别的表。结束标签错过了我忽略的正斜杠。显然,这完全打断了以后出现的表单的功能而没有丢失任何错误。

故事的寓意是:如果您正在使用网络应用上的动态行为并且没有任何例外,那么它有可能是因为错误在您的HTML中