0

I use Eloquent PHP as ORM and implement query builder for my web applications.

Usually, it works when the code looks like this.

$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();

But when I use an attribute from an object I got this error:

Call to undefined method Erdkk\Models\Areas::getIdAttribute()

The code looks like this.

$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();

0 Answers0