我试图从我的编辑页面进入我的更新页面,但文档中没有任何内容可以解释如何路由到它。这是我的编辑页面上的表单:
/*
Or method="PUT"
*/
<form method="PATCH" action="../{{$id}}">
{{ method_field('PUT') }}
<input type="submit" value="edit"/>
</form>
我的路线被宣布为资源控制器:
Routes::resource('/','TestController',['parameters' => [
'' => 'test'
]]);
在我的控制器中我只有:
public function update(Request $request, Test $test){
return 'test';
}
在尝试以多种方式访问更新操作时,它只是给了我不同的错误。
我试过:{{route($id)}}
给了我:
路线1未定义
资源文档告诉我,url应该是这样的:
PUT/PATCH /photos/{photo}
我不了解laravel中的资源控制器的路由,并且没有太多可以找到它。我甚至试图从/{{$id}}/edit
那样简单地回到../{{$id}}
这样:Struct
但这只是让我参加了show动作(因为show和update显然有相同的url)而且我也认为这不是最好的从控制器访问动作的方法。
答案 0 :(得分:0)
尝试将表单开始标记更改为:
<form method="POST" action="{{ url($id) }}">
{{ csrf_field() }}
{{ method_field('PUT') }}
希望这有帮助!
答案 1 :(得分:0)
对于资源路由,您可以在控制器中使用以下方法。 指数
public function index()
{
return view();
}
创建
public function create()
{
//
}
商店
public function store(Request $request)
{
//
}
显示
public function show($id)
{
//
}
修改
public function edit($id)
{
//
}
更新
public function update(Request $request, $id)
{
//
}
破坏
public function destroy($id)
{
//
}
使用php artisan创建您的控制器。然后这些资源方法将自动创建。