Просто, чтобы уменьшить дублирование кода и простоту реализации, я расширил Laravel base Controller
, чтобы можно было устанавливать промежуточное ПО и некоторые другие вещи, которые я могу добавить по мере сборки. Наконец это AdminController
Я расширяю со всеми остальными контроллерами, которые будут использоваться в области администратора. Таким образом, я могу унаследовать промежуточное программное обеспечение и другие вещи от AdminController
.
Вопрос: Является ли это хорошей практикой, расширяя контроллер в Laravel?
AdminController
class AdminController extends Controller
{
use AdminMenu;
public function __construct()
{
//auth user
$this->middleware(['auth', 'admin']);
//sidenav items
$this->navItems();
}
...
}
UserController и другие
class UserController extends AdminController
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\Response|\Illuminate\View\View
*/
public function index()
{
return view('admin.user.index');
}
...
}