0

私のコントローラー(メンバー)の1つに単純な機能があります:

function action_data($array) { 
    $datamembre = DB::table('members')->where('id', '=', $id)->first(); 
    return $datamembre; 
}

別のコントローラーのビューで使用したいのですが、テンプレートでこれを行います。

 $datamembers = Controller::call('members@data', array($members_id));

それを行うためのより良いまたは適切な方法はありますか?

4

2 に答える 2

4

最良の方法は、それをメンバーモデルIMOに入れることです。

于 2013-03-10T11:52:40.780 に答える
0

ビューコンポーザーを使用するhttp://laravel.com/docs/views#view-composers

View::composer(array('home', 'profile'), function($view)
{
    //
});

アップデート

メソッドをBaseControllerに配置でき、すべてのコントローラーがメソッドを拡張するため、このメソッドを任意のコントローラー/ビューで取得できます。そしてそれを静的にします。

// in BaseController.php (L4) or Base.php (L3)

static public function action_data($array) { 
    $datamembre = DB::table('members')->where('id', '=', $id)->first(); 
    return $datamembre; 
}

ビューで

BaseController::action_data($array); //L4

Base_Cotroller::action_data($array); //L3

それがうまくいくことを願っています。それをテストしていません。

于 2013-03-10T12:14:23.647 に答える