使用Laravel Collective的表单上的我的提交按钮不起作用。按下提交时,表单信息会在刷新表单时保留,并且数据库中不会显示任何内容。基于生成的HTML,似乎它实际上并没有沿着路线行进,但我似乎无法弄清楚是否使其真正通过了“商店”路线。
create.blade.php:
{!! Form::open(['route' => 'items.store']) !!}
<div class="form-group">
{!! Form::submit('Submit') !!}
</div>
{!! Form::close() !!}
项目控制器:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Item;
class ItemController extends Controller
{
public function store(Request $request)
{
$request->validate([
'item_name'=>'required',
'item_price'=> 'required|integer',
'item_category' => 'required',
'item_url' => 'required'
]);
$item = new Item([
'item_name' => $request->get('item_name'),
'item_price'=> $request->get('item_price'),
'item_category'=> $request->get('item_category'),
'item_url' => $request->get('item_url')
]);
$item->save();
return redirect('/items')->with('success', 'Item has been added');
}
}
web.php:
Route::resource('items', 'ItemController');
生成的HTML:
<form method="POST" action="https://website.com/public/items" accept-charset="UTF-8"><input name="_token" type="hidden" value="...">
<div class="form-group">
<input type="submit" value="Submit">
</div>
</form>