【问题标题】:Laravel The GET method is not supported for this route. Supported methods: POSTLaravel 该路由不支持 GET 方法。支持的方法:POST
【发布时间】:2019-10-12 13:43:50
【问题描述】:

我有下一个麻烦 我有一个表格,当我点击注册按钮时,显示下一个:

“此路由不支持 GET 方法。支持的方法:POST。”

但我的方法是 POST,这是我的路线:

Route::post('/createpedido',[
'uses'=>'PedidosControlador@pedidoagregado',
'as'=>'Pedidos.pedidoagregado']);

这是我刀片的一部分

            <form method="post" action="{{route('Pedidos.pedidoagregado')}}" enctype="multipart/form-data">
            {{csrf_field()}}
            <div class="row text-center">

                <div class="col-lg-12 col-sm-12">
                    <h2>Agregar Pedido</h2>
                    <h3>Cliente: {{$Clientes->nombreempresa}}</h3>
                </div>

                <div class="col-lg-6 col-sm-6">
                    <h2>Datos Pedido</h2>
                    <hr size="5" color="#FF0000" />

这是我的完整控制器

   public function pedidoagregado(Request $request)
{
    $validator = Validator::make($request->all(), [
        'pedido' => 'required|string|max:255',
        'fechapedido' => 'required|date|max:255',
        'fechaentrega' => 'required|date|max:255',
        'tipopedido' => 'required|string|max:255',
        'observaciones' => 'required|email|max:255',
    ]);

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

    $pedido = $request['pedido'];
    $fechapedido = $request['fechapedido'];
    $fechaentrega = $request['fechaentrega'];
    $tipopedido = $request['tipopedido'];
    $observaciones = $request['observaciones'];
    $idcliente = $request['idcliente'];

    $pedidos = new Pedidos();

    $pedidos->idcliente = $idcliente ;
    $pedidos->npedido = $pedido;
    $pedidos->fechapedido = $fechapedido;
    $pedidos->fechaentrega = $fechaentrega;
    $pedidos->tipopedido = $tipopedido;
    $pedidos->observacones = $observaciones;
    $pedidos->save();

    $request->session()->flash('alert-success', 'Pedido Agregado Correctamente');

    if(Auth::user()->userlevel == "admin"){
    return redirect()->to('administrador/');
    }

    if(Auth::user()->userlevel == "ventas"){
        return redirect()->to('ventas/');
    }

}

感谢您的帮助

【问题讨论】:

  • 我们可以看看你的整个表格吗?这可能是您提交的更远的问题。还有,你发composer dump了吗?
  • 你好@Beto,你试过关闭
    标签吗?

标签: php laravel laravel-5.8


【解决方案1】:

我检查了您提供的代码,一切正常。我想,你有可能让两个routes 一个获取表单,第二个用于发布路由以将数据发布到服务器。

也许是错误的,你给两条路由都赋予了相同的别名。

您提供方法post,因此无论您提供相同的别名,它都应该起作用,也许您忘记关闭form tag,或者错误地,您的form 中有另一个表单。 路由缓存可能存在一些问题。 所以用工匠命令清除它。

php artisan route:clear

也许这会起作用,有可能你做错了什么,所以我建议你重新检查我在答案中包含的所有部分。

【讨论】:

    猜你喜欢
    • 2020-02-07
    • 2021-04-11
    • 2021-04-08
    • 2019-12-28
    • 2021-08-05
    • 2020-06-05
    • 2020-03-21
    • 2021-01-10
    • 2020-04-19
    相关资源
    最近更新 更多