【发布时间】:2017-01-13 08:13:14
【问题描述】:
- Laravel 版本:5.3.28
- PHP 版本:7.0.10
- 数据库驱动程序和版本:MySQL 5.7.14
当我尝试在我的视图页面中使用 whereDate 时出现错误。
Macroable.php 第 74 行中的 1/2 BadMethodCallException:方法 whereDate 不存在。
Macroable.php 第 74 行中的 2/2 ErrorException:方法 whereDate 没有 存在。 (看法: C:\wamp\www\2_Work\dashboard\resources\views\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);
用户模型
class UserModel extends Model
{
public function dataDetail()
{
return $this->hasMany('App\DataDetailModel', 'user_id', 'user_id');
}
}
【问题讨论】:
-
您能添加您的型号吗?
$user->dataDetail是什么? -
你的 laravel 版本是什么?
-
@SSuhat V5.3.28
-
你试过
$user->dataDetail()->whereDate('created_at', '2017-01-13')->toArray();吗? -
@CUGreen 哦对了,但是必须加->get()才能使用这个
$user->dataDetail()->whereDate('created_at', '2017-01-13')->get()->toArray();非常感谢。
标签: laravel eloquent laravel-5.3