我使用 Eloquent PHP 作为 ORM 并为我的 Web 应用程序实现查询构建器。
通常,当代码看起来像这样时,它就可以工作。
$builder = Area::query()->limit(30);
if ($subDistrictCode = $request->getParam('sub_district_code')) {
$builder->where('sub_district_code', $subDistrictCode);
}
if ($districtCode = $request->getParam('district_code')) {
$builder->where('district_code', $districtCode);
}
$areasCount = $builder->count();
if ($limit = $request->getParam('length')) {
$builder->limit($limit);
}
if ($offset = $request->getParam('start')) {
$builder->offset($offset);
}
$areas = $builder->orderBy('province','ASC')->get();
但是当我使用对象的属性时,我得到了这个错误:
调用未定义的方法 Erdkk\Models\Areas::getIdAttribute()
代码看起来像这样。
$builder = Area::query()->limit(30);
if ($subDistrictCode = $request->getParam('sub_district_code')) {
$builder->where('sub_district_code', $subDistrictCode['id']);
}
if ($districtCode = $request->getParam('district_code')) {
$builder->where('district_code', $districtCode);
}
$areasCount = $builder->count();
if ($limit = $request->getParam('length')) {
$builder->limit($limit);
}
if ($offset = $request->getParam('start')) {
$builder->offset($offset);
}
$areas = $builder->orderBy('province','ASC')->get();