laravel 5.3 RouteCollection.php 第 218 行中的 MethodNotAllowedHttpException:
laravel 5.3 MethodNotAllowedHttpException in RouteCollection.php line 218:
(已解决)谢谢..
我只想创建一个名为 "tambah.blade.php" 的新视图,控制器是 "JurnalController.php",方法是 "tambahJurnal",但它显示错误。我的路线有什么问题?
这是我的表格:
<h1>Tambah Jurnal</h1>
<form method="post" class="tambahJurnal" action="{{ route('tambah') }}" >
{{ csrf_field() }}
<div class="">
No jurnal
<input type="text" name="no_jurnal" value="">
</div>
<div class="">
Tgl Jurnal
<input type="date" name="tgl_jurnal" value="">
</div>
<div class="">
Keterangan
<input type="textarea" name="keterangan" value="">
</div>
<input type="submit" name="" value="Submit">
</form>
这是我在 JurnalController 中的方法:
public function tambahJurnal(Request $request){
$jurnal = new Jurnals;
$jurnal->no_jurnal = $request->no_jurnal;
$jurnal->tgl_jurnal = $request->tgl_jurnal;
$jurnal->keterangan = $request->keterangan;
$jurnal->save();
}
这是我的路线:
Route::post('/tambah', 'JurnalController@tambahJurnal');
它显示如下错误:
enter image description here
你可以这样写。希望这能解决您的问题。
<h1>Tambah Jurnal</h1>
<form method="post" class="tambahJurnal" action="{{ url('tambah') }}" >
{{ csrf_field() }}
<div class="">
No jurnal
<input type="text" name="no_jurnal" value="">
</div>
<div class="">
Tgl Jurnal
<input type="date" name="tgl_jurnal" value="">
</div>
<div class="">
Keterangan
<input type="textarea" name="keterangan" value="">
</div>
<input type="submit" name="" value="Submit">
</form>
您正在使用此行为 POST
方法创建路由:
Route::post('/tambah', 'JurnalController@tambahJurnal');
但是,您正在尝试使用浏览器在 URL 上执行 GET
请求。这就是您收到该错误的原因。
也尝试添加这一行:
Route::get('/tambah', 'JurnalController@tambahJurnal');
尝试表单操作 ="/tambah"
尝试
Route::any('/坦巴', 'JurnalController@tambahJurnal');
首先,如果它工作正常,你可以更改为
Route::post('/坦巴', 'JurnalController@tambahJurnal');
any 将适用于 get post put ....
更改此行
Route::post('/tambah', 'JurnalController@tambahJurnal');
到
Route::post('tambah', 'JurnalController@tambahJurnal')->name('tambah');
并使用 blade Form
<h1>Tambah Jurnal</h1>
{!! Form::open(['route' => 'tambah','method' => 'POST','class' => 'tambahJurnal']) !!}
<div class="">
No jurnal
<input type="text" name="no_jurnal" value="">
</div>
<div class="">
Tgl Jurnal
<input type="date" name="tgl_jurnal" value="">
</div>
<div class="">
Keterangan
<input type="textarea" name="keterangan" value="">
</div>
<input type="submit" name="" value="Submit">
{!! Form::close() !!}
使用 blade Form
的优点是,您不需要明确指定 {{ csrf_field() }}
,blade 注入 csrf token
本身。
添加路线以显示视图
Route::get('/tambah', 'JurnalController@index');
并将索引方法添加到您的控制器
public function index(){
return view("tambah");
}
同时添加/
action="{{ route('/tambah') }}"
有时碰巧你在 /tambah
并试图 post url 变成 /tambah/tambah
#1。在您的路线文件中添加此路线。
Route::get('/tambah', function()
{
return view('tambah');
});
#2。 tambah.blade.php
文件中的更改
<form method="post" class="tambahJurnal" action="{{ route('tambah') }}" >
到
<form method="post" class="tambahJurnal" action="{{ url('tambah') }}" >
谢谢
(已解决)谢谢..
我只想创建一个名为 "tambah.blade.php" 的新视图,控制器是 "JurnalController.php",方法是 "tambahJurnal",但它显示错误。我的路线有什么问题?
这是我的表格:
<h1>Tambah Jurnal</h1>
<form method="post" class="tambahJurnal" action="{{ route('tambah') }}" >
{{ csrf_field() }}
<div class="">
No jurnal
<input type="text" name="no_jurnal" value="">
</div>
<div class="">
Tgl Jurnal
<input type="date" name="tgl_jurnal" value="">
</div>
<div class="">
Keterangan
<input type="textarea" name="keterangan" value="">
</div>
<input type="submit" name="" value="Submit">
</form>
这是我在 JurnalController 中的方法:
public function tambahJurnal(Request $request){
$jurnal = new Jurnals;
$jurnal->no_jurnal = $request->no_jurnal;
$jurnal->tgl_jurnal = $request->tgl_jurnal;
$jurnal->keterangan = $request->keterangan;
$jurnal->save();
}
这是我的路线:
Route::post('/tambah', 'JurnalController@tambahJurnal');
它显示如下错误: enter image description here
你可以这样写。希望这能解决您的问题。
<h1>Tambah Jurnal</h1>
<form method="post" class="tambahJurnal" action="{{ url('tambah') }}" >
{{ csrf_field() }}
<div class="">
No jurnal
<input type="text" name="no_jurnal" value="">
</div>
<div class="">
Tgl Jurnal
<input type="date" name="tgl_jurnal" value="">
</div>
<div class="">
Keterangan
<input type="textarea" name="keterangan" value="">
</div>
<input type="submit" name="" value="Submit">
</form>
您正在使用此行为 POST
方法创建路由:
Route::post('/tambah', 'JurnalController@tambahJurnal');
但是,您正在尝试使用浏览器在 URL 上执行 GET
请求。这就是您收到该错误的原因。
也尝试添加这一行:
Route::get('/tambah', 'JurnalController@tambahJurnal');
尝试表单操作 ="/tambah" 尝试 Route::any('/坦巴', 'JurnalController@tambahJurnal'); 首先,如果它工作正常,你可以更改为 Route::post('/坦巴', 'JurnalController@tambahJurnal');
any 将适用于 get post put ....
更改此行
Route::post('/tambah', 'JurnalController@tambahJurnal');
到
Route::post('tambah', 'JurnalController@tambahJurnal')->name('tambah');
并使用 blade Form
<h1>Tambah Jurnal</h1>
{!! Form::open(['route' => 'tambah','method' => 'POST','class' => 'tambahJurnal']) !!}
<div class="">
No jurnal
<input type="text" name="no_jurnal" value="">
</div>
<div class="">
Tgl Jurnal
<input type="date" name="tgl_jurnal" value="">
</div>
<div class="">
Keterangan
<input type="textarea" name="keterangan" value="">
</div>
<input type="submit" name="" value="Submit">
{!! Form::close() !!}
使用 blade Form
的优点是,您不需要明确指定 {{ csrf_field() }}
,blade 注入 csrf token
本身。
添加路线以显示视图
Route::get('/tambah', 'JurnalController@index');
并将索引方法添加到您的控制器
public function index(){
return view("tambah");
}
同时添加/
action="{{ route('/tambah') }}"
有时碰巧你在 /tambah
并试图 post url 变成 /tambah/tambah
#1。在您的路线文件中添加此路线。
Route::get('/tambah', function()
{
return view('tambah');
});
#2。 tambah.blade.php
文件中的更改
<form method="post" class="tambahJurnal" action="{{ route('tambah') }}" >
到
<form method="post" class="tambahJurnal" action="{{ url('tambah') }}" >
谢谢