如何使用laravel和mysql根据日期范围查看数据

时间:2017-10-17 05:36:11

标签: php mysql database laravel date

路线:

Route::post('dategraph','Chatbot\TrackerController@dategraph');

控制器:

public function dategraph(Request $request)
{
    $dategraph = DiraStatistics::all()->whereBetween('date_access', [$from, $to])->get();

    $dates = $dategraph('date_access');

    return view('AltHr.Chatbot.graph', compact('dates'));
}

查看:

<form id="form-project" role="form" action="{{action('AltHr\Chatbot\TrackerController@dategraph')}}" autocomplete="off" method="POST">

          {{csrf_field()}}
          <!-- <canvas id="myChart" width="150" height="50"></canvas> -->

            <div class="form-group-attached">
              <div class="row">
                  <div class="col-lg-6">
                      <div class="form-group form-group-default required" >
                          <label>From</label>
                          <input type="date" class="form-control" name="from" required>
                      </div>
                  </div>
                  <div class="col-lg-6">
                      <div class="form-group form-group-default required" >
                          <label>To</label>
                          <input type="date" class="form-control" name="to">
                      </div>
                  </div>
              </div>
            </div>
            <button class="btn alt-btn-black btn-xs alt-btn pull-right" type="submit">Next</button>
</form>

大家好,所以我试着查看所选日期的数据,就像我写的代码一样。但我得到一个错误。我写得对吗?或者我错过了什么?

1 个答案:

答案 0 :(得分:1)

您没有$from变量。 您需要从请求中提取已发布的变量。

方法get()将返回Collection个对象。例如,您可以通过拔出列并将其转动toArray()

将其转换为平面阵列
$dategraph = DiraStatistics::whereBetween(
    'date_access', 
    [
        $request->get('from'),
        $request->get('to')
    ]
)->get();
$dates = $dategraph->pluck('date_access')->toArray();