Może jest to moja nie wiedza odnośnie OOP, ale zależy mi też aby zrobić to poprawnie w Laraverze.
mam taki układ controllerów:
/controllers
---PagesController
---/Pages
-------DefaultController
plik DefaultController:
<?php namespace App\Http\Controllers\Pages; use Illuminate\Http\Request; use App\Http\Requests; use App\Http\Controllers\Controller; use App\Http\Controllers\PagesController; /** * Class DefaultController * @package App\Http\Controllers\Pages */ class DefaultController extends PagesController { /** * Create default edit view * @return mixed */ public function createDefaultView() // { $viewPortlet = view('pages.edit'); $settingsPortlet = [ 'setRedricted' => '', 'setClass' => '', 'setTitle' => '', 'setTitleHelper' => '', 'setActionButtons' => '', ]; return $this->createPortlet($settingsPortlet, $viewPortlet); } }
1. W jaki sposób w PagesController wywołać funkcję: createDefaultView?, wiem że jak dodam że jest to funkcja statyczna to mi zadziała: DefaultController::createDefaultView(), czy w przypadku Laravela powinno się robić to inaczej? Można jeszcze w inny sposób dostać się do tej funkcji nie używając static?
2. Jak funkcję createPortlet wywołać z Controllera głównego bo tam też ona się znajduje? //w controller.php jest jako public function createPortlet()
Z góry dziękuję za pomoc
/////////////
wszystko działa jeżeli funkcje pozamieniam na statyczne, ale czy to tak może być?