Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

error in abstract should be compatible with

Tags:

php

laravel

I have abstract class something like this

protected function update(Request $request, $id)
{
    //function body
}

and extended class like

protected function update(PageRequest $request, $id)
{
    //function body
}

injected PageRequest extended from Request

<?php

namespace App\Http\Requests;

use App\Helpers\Helpers;
use App\Http\Requests\Request;

class PageRequest extends Request
{
    //function body
}

I get this error

Declaration of App\Http\Controllers\PagesController::update() should be compatible with App\Http\Controllers\MasterController\CrudController::update(App\Http\Requests\Request $request, $id)

I know to pass all of the arguments and access same for update() methods and I think I do it correctly.

like image 650
Pedram marandi Avatar asked Dec 06 '25 21:12

Pedram marandi


1 Answers

Correct way to do this:

class Request implements RequestInterface
class PageRequest extends Request

And the function :

protected function update(RequestInterface $request, $id)
like image 57
Med Avatar answered Dec 08 '25 12:12

Med