View laravel helpers方法应该如何从视图与数据库交互?
在我的视图中,我列出了来自解析xml的流表行,其中包含一个特定的mysql表ID,我想用它来计算表中现有的行数。 我如何在laravel视图中使用一个helper函数,它需要这个id并返回计数行 差不多View laravel helpers方法应该如何从视图与数据库交互?,view,laravel,helper,View,Laravel,Helper,在我的视图中,我列出了来自解析xml的流表行,其中包含一个特定的mysql表ID,我想用它来计算表中现有的行数。 我如何在laravel视图中使用一个helper函数,它需要这个id并返回计数行 差不多 @foreach ($items as $item) counted:{{count_rows($item->id)}} @endforeach 在您的视图中,您不应该进行此类计算,这是您的模型应该做的事情,或者,可能是您的控制器。这是一个例子: class Billing exte
@foreach ($items as $item)
counted:{{count_rows($item->id)}}
@endforeach
在您的视图中,您不应该进行此类计算,这是您的模型应该做的事情,或者,可能是您的控制器。这是一个例子:
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();
}
}
感谢您的反馈,我重新分解了代码,并将所有内容绑定到模型中。有一件事我真的不喜欢我的html冗余s。很好!如果您正在构建一个大型应用程序,那么也可以考虑使用存储库模式,在您的模型中没有与域相关的代码,只考虑与数据库访问相关的内容。