Laravel从下拉列表中获取数据并将其传递给控制器

时间:2018-03-01 11:09:22

标签: php laravel laravel-5

我试图让用户从显示月份的下拉列表中选择一个月,并将该月份值(以数字表示)传递给控制器 我无法将下拉列表设置为操作,因此一旦用户选择月份,控制器就会被调用。

这是我的索引页面:

  <h>Display a logs by monthly <h>
    {{ $id=Form::selectMonth('month')}}
    <a href="{{action('LogController@monthly',['id' => $id]) }}"  class="btn btn-primary">Monthly Logs
      </a>

当我在标签内添加Form方法时,我收到一个错误,表示该变量未定义。

这是Controller.php

 public function monthly($id)
 {
     $dcmlogs = log::with('users')
     ->whereMonth('created_at', '=', $id)
     ->paginate(15);
    return view('dcmlog.index', compact('dcmlogs'));
}

2 个答案:

答案 0 :(得分:0)

我建议使用creatintg路线

Route::get('/logs/{id}', 'LogController@monthly')->name('logs');

并在模板中使用route函数:

route('logs', ['id'->$id]);

答案 1 :(得分:0)

您可以使用以下内容:

{!! Form::open(['route' => ['logs', $id], 'method' => 'POST' ])!!}
  {{ Form::select('in_out',[1 => 'Jan', 2 => 'Feb'] , null, ['class'=>' 
     form-control']) 
  }}                 
{!! Form::close() !! }}

希望这会有所帮助..

相关问题