0

我的一个控制器(成员)中有一个简单的功能:

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 回答