如何在laravel 4中的blade.php模板中使用静态函数?

时间:2013-06-11 19:15:33

标签: methods laravel laravel-4 blade

我有一个类公共静态方法,它抓取一些数据库信息并返回一个整数。在控制器中,我可以调用该方法。如何在刀片模板中调用该静态方法?

例如:

@foreach ($tasks as $task)
  {{Task::percentComplete($task->id)}}%<br />
@endforeach

谢谢

2 个答案:

答案 0 :(得分:6)

你可以

A-使其成为一个立面:http://laravel.com/docs/facades

B-将其移动到帮助者/库中:https://stackoverflow.com/a/13481218/2446119

我个人认为帮助程序和库的编码更容易,更快,但外观更清晰。

答案 1 :(得分:0)

实现这一目标的一种方式就是在您的刀片模板中嵌入PHP,至少在Laravel 4.0中是这样;我将一个写得不好的旧项目迁移到了laravel。由于我遇到的问题数量和时间限制而如此不堪重负,我没有时间寻找更好的方法。我做了一堆总共大约30k行代码的html表单。

<?php
 $haystack=Session::get('orderInfo.form.conditions',array());
?>

然后您可以正常访问您的数据:

{{in_array('Special Assignments',$haystack)?'checked="checked"':''}}

这对我有用。

  

注意:为了记录,只需加2美分。有   如公认的答案所述,更好,更清洁的方法。