我遇到問題,我嘗試綁定到我的視圖的數據只有當我在某些位置註冊綁定時才起作用。查看共享/作曲家不能從BaseController正常工作
例如,當我嘗試綁定App::before()
過濾器時,它可以工作,並且所有視圖中都可以使用successMessages
。但是,當我嘗試在BaseController構造函數(所有控制器繼承自它)中執行此操作時,我收到一個未找到變量的錯誤。
class BaseController extends Controller
{
public function __construct()
{
View::share('successMessages', array('All good', 'Nailed it', 'Perfect'));
}
}
同樣的問題,當我嘗試使用,而不是View::share()
方法將View Composer存在。
View::composer(array('layouts.application', 'layouts.home'), function($view)
{
$view->with('successMessages', array('All good', 'Nailed it', 'Perfect'));
});
任何想法,爲什麼這些將在App::before()
過濾器註冊,但是不能控制器構造,在那裏我想他們大概應該屬於?
也許你應該從子控制器調用父構造函數? 'parent :: __ construct()' –