表单操作未重定向到路由


form action not redirected to the route

我有这个控制器:

  public function category($name)
  {
        $ch = DB::select('select * from quiz where category=?',['$name']);
        return View('quiz.index',['quiz'=>$ch]);     
 }

返回到视图CCD_ 1。该视图具有格式

<form method="POST" action="{{url('quiz/check/$quiz->category')}}"
{!! csrf_field() !!} 
@foreach ($quiz as $q)
@if($q->level=='1')
{{ $q->qid }}.  
{{ $q->question }}<br>
<input type='radio' name='mycheck[{{$q->qid}}]' value='1'>     
{{ $q->opt1 }}<br>
<input type='radio' name='mycheck[{{$q->qid}}]' value='2'>     
{{ $q->opt2 }}<br>
<input type='radio' name='mycheck[{{$q->qid}}]' value='3'>    
{{ $q->opt3 }}<br>
<input type='radio' name='mycheck[{{$q->qid}}]' value='4'>   
{{ $q->opt4 }}<br><br>
@endif
@endforeach        
    <button type="submit" class="btn btn-default">Get result</button>
                            </form>

表单中的操作有什么问题。它没有重定向到此路由:换句话说,操作中的$quiz->category可能不起作用。

Route::post('/quiz/check/{name}', 'playquiz@check');

试试这个:

{{url("quiz/check/{$quiz[0]->category}")}

或在控制器中更改为:

return View('quiz.index')->with('show');

和视图:

{{url("quiz/check/$show->category")}

在单引号内有一个变量和一个方法调用。可以将其追加,也可以使用带大括号的双引号。换句话说,不要这样做:

url('quiz/check/$quiz->category')

但做以下任一项:

url('quiz/check/'.$quiz->category)
url("quiz/check/{$quiz->category}")