【发布时间】:2017-09-21 14:30:58
【问题描述】:
我在提交表单时收到“MethodNotAllowedHttpException”错误,但我不知道为什么。这是我使用 Laravel Collective 表单创建器创建的表单:
{!! Form::open(['url' => 'photographer/listing/store', 'method'=>'POST', 'files' => true]) !!}
//Bunch of Form Inputs here:
{!!Form::submit('Create Listing')!!}
{!! Form::close() !!}
那么这是我的路线:
Route::post('photographer/listing/store', 'PhotographerController@storeListing');
最后,这里是控制器:
class PhotographerController extends Controller
{
public function storeListing(Request $request)
{
//Form Validation
//Store in the database
return redirect('/photographer');
}
}
据我所知,当您对请求使用不正确的方法时会出现此错误,例如。 route 是一个 get where form 是一个帖子,但这里不是这样,所以我真的不知道发生了什么。
更新:我也在这里包含来自php artisan route:list 的相关信息:
POST | photographer/listing/store | | App\Http\Controllers\PhotographerController@storeListing | web,auth:photographer
GET|HEAD | photographer | photographer.dashboard | App\Http\Controllers\PhotographerController@index | web,auth:photographer
【问题讨论】:
-
尝试在表单中设置绝对网址。喜欢这个
['url' => '/photographer/listing/store' ...]。我什至建议您使用name 您的路线并使用route(name)给他们打电话。 -
已经试过了,还是不行。
-
尝试使用网址助手:
'url' => url( 'photographer/listing/store') -
@PeymanSeraj 感谢您的提示,但这也没有用。
-
请尝试列出您的路线。
php artisan route:list。你能看到你的路线吗?
标签: laravel laravel-5.4