php - POST 方法
问题描述
我是 laravel 的新手,我想提交一个包含一些附件和一些数组的表单,但是当我单击提交按钮时,Laravel 说:这条路线不支持 POST 方法。支持的方法:GET、HEAD。请一些人帮助我------------这是页面代码
@extends('product.layout')
@section('content')`enter code here`
<br><br><br>
<div class="row">
<div class="col-lg-12 margin-tb">
<div class="pull-left">
<h2>Add new Product</h2>
</div>
</div>
<br><br><br>
<div class="pull-right">
<a class="btn btn-success" href="{{ route('product.index') }}">Back</a>
</div>
<form action="{{route('product.store')}}" method="POST" enctype="multipart/form-data">
@csrf
<div class="form-row">
<div class="form-group col-md-6">
<div class="form-group">
<strong>Product name :</strong>
<input type="text" name="product_name" calss="form-control" placeholder="Product">
</div>
</div>
<div class="form-group col-md-4">
<div class="form-group">
<strong>Product Code :</strong>
<input type="text" name="product_code" calss="form-control" placeholder="Code">
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-12">
<div class="form-group">
<strong> Detials :</strong>
<textarea class="form-control" name="product_details" placeholder="Details"></textarea>
</div>
<div class="col">
<div class="form-group">
<strong>Product image :</strong>
<input type="file" name="product_logo">
</div>
</div>
<button type="submit" class="btn btn-primary">Save</button>
</div>
</div>
</form>
@endsection
这是产品控制器
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\product;
use Illuminate\Support\Facades\DB as FacadesDB;
use DB;
class ProductController extends Controller
{
public function index(){
$products = product::all();
return view('product.index' ,compact('products'));
}
public function create(){
return view('product.create');
}
public function store(Request $request ){
$data = array();
$data['product_name'] = $request->product_name;
$data['product_code'] = $request->product_code;
$data['product_details'] = $request->product_details;
$image = $request->file('product_logo');
if ($image){
$image_name = date('dmy_H_s');
$ext = strtolower($image->getClientOriginalExtension());
$image_full_name = $image_name.'.'.$ext;
$upload_path = 'public/media/';
$image_url = $upload_path.$image_full_name;
$data['product_logo'] = $image_url;
$success =$image->move($upload_path,$image_full_name);
$data['product_logo'] =$image_url;
$product =DB::table('products')->insert($data);
}
return redirect()-> route('product.index')
->with('success','Product Created Successfully');
}
}
你也可以看到
Route::get('store','ProductController@store')->name('product.store');
解决方案
更改您的路线发布。路线::发布
推荐阅读
- java - 有什么方法可以让@InitBinder 使用地图参数或覆盖spring默认的HandlerMethodArgumentResolver?
- netezza - 在 Netezza 中查找 VARCHAR 和 DATE 之间的年数
- javascript - Chrome 显示所有请求
- assembly - 汇编x86检查3个值是否可以形成一个三角形
- javascript - 在 div 中使用脚本(在 react .js 文件中)会引发错误
- java - 如何通过 Java 中的硒测试提供对维基百科中建议结果(下拉菜单)的点击?
- angular - Angular 7中的多个共享级联组合框组件
- deployment - 在 Slack 上部署 Watson
- docker - 无法从主机连接到 docker 容器内的 .net 核心网站
- java - how to add an image to my sql server database