php - 此路由不支持 GET 方法。支持的方法:PUT
问题描述
我想将值存储到数据库并重定向到新页面,但发现此错误。我多次更改代码,但显示相同的错误。我不断地发现这个错误。如果有任何技巧可以避免错误,请提供给我。我尝试了很多可能的事情,但错误是一样的。任何更改在这里都没有帮助。
路由.php
Route::get('/create', ['as'=>'creates','uses'=>'CAsController@create2']);
Route::put('/postca', 'CAsController@storing');
CAs控制器
namespace App\Http\Controllers;
use App\CAModel;
use Illuminate\Http\Request;
class CAsController extends Controller
{
public function create2(){
return view('chartered.create');
}
public function storing(Request $request)
{
// Handle File Upload
if($request->hasFile('profile')){
// Get filename with the extension
$filenameWithExt = $request->file('profile')->getClientOriginalName();
// Get just filename
$filename = pathinfo($filenameWithExt, PATHINFO_FILENAME);
// Get just ext
$extension = $request->file('profile')->getClientOriginalExtension();
// Filename to store
$fileNameToStore= $filename.'_'.time().'.'.$extension;
// Upload Image
$path = $request->file('profile')->storeAs('public/profile', $fileNameToStore);
} else {
$fileNameToStore = 'noimage.jpg';
}
// Handle File Upload
if($request->hasFile('certificate')){
// Get filename with the extension
$filenameWithExt1 = $request->file('certificate')->getClientOriginalName();
// Get just filename
$filename1 = pathinfo($filenameWithExt1, PATHINFO_FILENAME);
// Get just ext
$extension1 = $request->file('certificate')->getClientOriginalExtension();
// Filename to store
$fileNameToStore1= $filename1.'_'.time().'.'.$extension1;
// Upload Image
$path1 = $request->file('certificate')->storeAs('public/certificate', $fileNameToStore1);
} else {
$fileNameToStore1 = 'noimage.jpg';
}
$ca = new CAModel;
$ca->fname = $request->input('fname');
$ca->lastname = $request->input('lastname');
$ca->username = $request->input('username');
$ca->city = $request->input('city');
$ca->state = $request->input('state');
$ca->zip = $request->input('zip');
$ca->phone = $request->input('phone');
$ca->email = $request->input('email');
$ca->gstno = $request->input('gstno');
$ca->website = $request->input('website');
$ca->services = $request->input('services');
$ca->profile = $fileNameToStore;
$ca->certificate = $fileNameToStore1;
$ca->save();
return redirect('/postca');
}
}
<form action="/postca" method="POST">
@method('PUT')
@csrf
<div class="row">
<div class="col-sm-4">
<div class="form-group">
<input type="text" name="fname" id="fname" placeholder="First Name" class="form-control" required>
</div>
</div>
<div class="col-sm-4">
<div class="form-group">
<input type="text" name="lastname" id="lastname" placeholder="Last Name" class="form-control" required>
</div>
</div>
<div class="col-sm-4">
<div class="form-group">
<input type="text" name="username" id="username" placeholder="UserName" class="form-control" required>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-4">
<label for="city">City</label>
<input type="text" class="form-control" id="city" name="city" placeholder="City" required>
</div>
<div class="col-sm-4">
<label for="state">State</label>
<input type="text" class="form-control" name="state" id="state" placeholder="State" required>
</div>
<div class="col-sm-4">
<label for="zip">Zip</label>
<input type="text" class="form-control" id="zip" name="zip" placeholder="Zip" required>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<label for="phone">Phone</label>
<input type="text" class="form-control" name="phone" id="phone" placeholder="Phone" required>
</div>
<div class="col-sm-6">
<label for="email">Email</label>
<input type="text" class="form-control" name="email" id="email" placeholder="Email" required>
</div>
</div>
<div class="row">
<div class="col-sm-6 col-md-4 col-sm-4">
<label for="gstno">GST No</label>
<input type="text" class="form-control" id="gstno" name="gstno" placeholder="GST number" required>
</div>
<div class="col-sm-6 col-md-4 col-sm-4">
<label for="website">Website</label>
<input type="text" class="form-control" id="website" name="website" placeholder="GST number" required>
</div>
</div>
<div class="form-group">
<label for="services">Select the Services you provide</label>
<select multiple class="form-control" name="services" id="services" multiple>
<option>Propertiership</option>
<option>One Person Company</option>
<option>Limited Liability Partnership</option>
<option>Private Limited Company</option>
<option>Public Limited Company</option>
</select>
</div>
<div class="row">
<div class="col-sm-6">
<div class="form-group">
<div class="custom-file">
<input type="file" class="custom-file-input" id="profile" name="profile" required>
<label class="custom-file-label" for="profile">Profile Photo</label>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<div class="custom-file">
<input type="file" class="custom-file-input" id="certificate" name="certificate" required>
<label class="custom-file-label" for="certificate">Company Incorporation Certifcate</label>
</div>
</div>
<div class="form-group">
<input class="btn btn-primary" type="submit" value="Go!">
</div>
</form>
解决方案
在您的控制器中,您返回return redirect('/postca');
. 该错误来自这样一个事实,即重定向始终是GET
请求,而您似乎GET
没有/postca
.
将重定向更改为GET
路由或添加Route::put('/postca', 'CAsController@.....');
路由。
推荐阅读
- ssis - 如何为 FTP 交换设置 SSIS 密码
- r - 解决 R 中的双重求和
- c - C:如何创建一个空的STRING?
- node.js - nodejs API限制......邮递员不允许......允许同源访问
- linux - Raven DB 4.1.2 在 Java 中挂起流式查询
- ios - UICollectionView didSelectedItemAt :首先单击单元格不起作用
- html - 如何为垂直堆积的按钮放置滚动条?
- acumatica - 如何使用自定义项目更改登录屏幕图像?
- json - jq:将对象的json数组输出到带有对象的键数组
- swift - 在 Swift 4+ 中为字典中的各种类型存储一组同质数组的最佳方法是什么?