laravel路线和参数

时间:2017-09-24 03:57:57

标签: php laravel

我正在尝试通过id进行搜索。

<form method="post" action="{{action('PLAYERController@edit')}}">
<input type="text" name="id">

控制器

public function edit(Request $request)
    {
        $id=$request->id;
        $ply = Player::find($id);
        return view::make('player.edit')->with(compact('ply'));
    }

路线

Route::get('/player/edit/{id}', 'PLAYERController@edit');

edit.blade.php

<td>{{$ply[first_name]}}</td>

我收到未定义的变量first_name错误。

2 个答案:

答案 0 :(得分:0)

你的路线必须如下所述,因为它的后期重新确认

Route::post('/player/edit', 'PLAYERController@edit');

你也可以按照以下表格采取行动

<form method="post" action="{{url('/player/edit')}}">
<input type="text" name="id">

如果您正在尝试获取请求,则必须将控制器更改为

    public function edit($id)
        {

            $ply = Player::find($id);
if($ply){
            return view::make('player.edit')->with(compact('ply'));
}
        }

答案 1 :(得分:0)

$ply是一个对象。试试这个

<td>{{ $ply->first_name }}</td>

如果$ply对象为null

,则不会引发任何错误

而且,您的路线中不需要{id}参数。因为你通过邮寄请求获得了id。

Route::get('/player/edit', 'PLAYERController@edit');
相关问题