我收到错误,当我尝试在我的视图页面中使用whereDate时。
Macroable.php第74行中的<1/2> BadMethodCallException:方法whereDate 不存在。 Macroable.php第74行中的2/2 ErrorException:方法whereDate没有 存在。 (视图: C:\瓦帕\ WWW \ 2_Work \仪表板\资源\视图\ PDF \ user.blade.php)
我的模型关系是有效的,但为什么我不能使用whereDate函数。
@extends('layouts.pdf')
@section('content')
<table border="1" cellspacing="0" cellpadding="0" width="545">
<tr>
<th>ชื่อผู้ใช้งาน</th>
<th>เข้าใช้ล่าสุด</th>
<th>จำนวนการเข้าใช้งานใน 7 วัน</th>
<th>จำนวนงานที่ทำในวันที่ 13/01/2560</th>
</tr>
@foreach ($users as $user)
<tr>
<td><span class="td-text">{{$user->user_detail}}</span></td>
<td align="center">{{$user->ual->first()->created_at ?? NULL}}</td>
<td align="center">{{$user->ual->where('created_at', '>=', '(CURDATE() - INTERVAL 7 DAY)')->count()}}</td>
<td align="left"><?php var_dump( $user->dataDetail->whereDate('created_at', '2017-01-13')->toArray() ); ?></td>
</tr>
@endforeach
</table>
@endsection
控制器
$data['users'] = UserModel::all();
return view('pdf.user', $data);
的usermodel
class UserModel extends Model
{
public function dataDetail()
{
return $this->hasMany('App\DataDetailModel', 'user_id', 'user_id');
}
}
答案 0 :(得分:3)
您可能需要在括号中使用$user->dataDetail()
,以便您可以使用查询生成器。
修改:正如您在评论中提到的,您还需要添加get()
来访问该集合。
所以$user->dataDetail()->whereDate('created_at', '2017-01-13')->get()->toArray()
答案 1 :(得分:0)
我想你错过了whereDate的第3段。
请试试这个
if(isset($user->dataDetail)) {
var_dump($user->dataDetail->whereDate('created_at','=' ,'2017-01-13')->get()->toArray());
}