【问题标题】:Laravel Action App\Http\Controllers\Admin\ConcursoController@store not definedLaravel Action App\Http\Controllers\Admin\ConcursoController@store 未定义
【发布时间】:2019-05-13 17:01:42
【问题描述】:

我想保存一些表单数据,但出现错误。

错误

Action App\Http\Controllers\Admin\ConcursoController@store not defined. (0)

我的表格

{!! Form::open(['action'=>'Admin\ConcursoController@store', 'method' => 'POST']) !!}
 <div class="form-group">
  {{Form::label('company','Entidade')}}
  {{Form::text('company','',['class' => 'form-control', 'placeholder' => 'Nome da entidade aquí..'])}}
</div>
{{Form::submit('submeter', ['class'=>'btn btn-primary'])}}
{!! Form::close() !!}

我的路线

$this->group(['middleware' => ['auth:admin'], 'namespace' => 'Admin', 'prefix' => 'admin'], function(){
$this->get('/', 'AdminController@index')->name('admin.home');
$this->resource('concursos', 'ConcursoController');

});

控制器索引方法

public function index()
{
    $concursos = Concurso::all();
    $title = 'Concursos';
    return view('admin.concursos.index',compact('title'))->with('concursos',$concursos);

}

控制器创建方法

public function create()
{
    return view('admin.concursos.create');

}

控制器存储方法

public function store(Request $request)
{
    $this->validate($request, [
        'title' => 'required',
        'body' => 'required',
    ]);


    //Criar concurso
    $concurso = new Concurso;
    $concurso->title = $request->input('title');
    $concurso->body = $request->input('body');
    $concurso->save();

    return redirect('/admin/concursos')->with('Success', 'Concurso Adicionado');
}

Laravel 版本 5.7.14

【问题讨论】:

  • 我们可以看看你的控制器吗?

标签: php laravel forms post laravel-blade


【解决方案1】:

可能检查此文件:App\Http\Controllers\Admin\ConcursoController 并查看您是否有一个名为“存储”的函数/方法。错误很简单,脚本找不到该函数。

【讨论】:

  • 是的,我有一个叫做 STORE 的方法,看到我已经添加了
  • App\Http\Controllers\Admin\ConcursoController 下有吗?我看到这里有一个额外的文件夹Admin,你确定你的这个控制器不直接驻留在Controllers 文件夹中吗?
【解决方案2】:

替换您的表单 ['route' => ['concursos.store']

喜欢

{!! Form::model($transactions, ['route' => ['transaction.store'], 'method' => 'POST','class'=>"form-horizontal"]) !!}

【讨论】:

  • Action App\Http\Controllers\Admin\ConcursoController@store 未定义。 (0)
  • 您的路线中有添加名称吗?
  • like this $this->resource('concursos', 'ConcursoController')->name(''concursos");
  • 用我的表单标签替换您的表单标签,并按照我的建议更改您的路线。在我的回答中,我通过 $transactions 你必须传递你需要从控制器传递的变量。
猜你喜欢
  • 2021-02-18
  • 2021-07-08
  • 2017-06-30
  • 2018-04-06
  • 2019-04-13
  • 2020-04-13
  • 1970-01-01
  • 2021-01-30
  • 2017-08-13
相关资源
最近更新 更多