laravel helpers方法应该如何从视图中与数据库交互?

时间:2014-05-03 07:29:00

标签: view laravel helper

在我的视图中,我列出了来自解析的xml的流表行,其中包含一个特定的mysql表ID,我想用它来计算表中的现有行。 我如何在laravel视图中使用一个辅助函数来预期这个id并返回计数行?

类似

@foreach ($items as $item)

counted:{{count_rows($item->id)}}

@endforeach

1 个答案:

答案 0 :(得分:1)

你不应该在你的视图中进行这种计算,这是你的模型应该做的事情,或者,也许是你的控制者。这是一个例子:

class Billing extends Controller {

    public function show($id)
    {
        $billing = Billing::find($id);

        return View::make('billing.show')->with('billing', $billing->getAllWithItems())
    }

}

class Billing extends Eloquent {

    public function getAllWithItems() 
    {
        return DB::table('billing')
            ->select(DB::raw('COUNT(items.id) as item_count')))
            ->left_join('items', 'items.billing_id', '=', 'billing.id')
            ->group_by('items.id')
            ->get();
    }

}