我有一個類公共靜態方法,它捕獲一些數據庫信息並返回一個整數。在控制器中,我可以很好地調用該方法。我如何在刀片模板中調用該靜態方法?如何在laravel 4的blade.php tempate中使用靜態函數?
例如:
@foreach ($tasks as $task)
{{Task::percentComplete($task->id)}}%<br />
@endforeach
謝謝
我有一個類公共靜態方法,它捕獲一些數據庫信息並返回一個整數。在控制器中,我可以很好地調用該方法。我如何在刀片模板中調用該靜態方法?如何在laravel 4的blade.php tempate中使用靜態函數?
例如:
@foreach ($tasks as $task)
{{Task::percentComplete($task->id)}}%<br />
@endforeach
謝謝
你既可以
A-使它成爲一個門面:http://laravel.com/docs/facades
B-將它變成一個輔助/庫:https://stackoverflow.com/a/13481218/2446119
我個人認爲助手和庫更容易編碼,但外觀更清潔。
一個不好的方法是將PHP嵌入到刀片模板中,至少在Laravel 4.0中;我把一個寫得很差的舊項目遷移到laravel。受到我遇到的問題數量和時間限制的困擾,我沒有時間尋找更好的方法來實現它。我做了一堆總共大約3萬行代碼的html表單。
<?php
$haystack=Session::get('orderInfo.form.conditions',array());
?>
然後就可以正常訪問您的數據:
{{in_array('Special Assignments',$haystack)?'checked="checked"':''}}
這對我工作。
注意:爲了文檔的緣故,只需添加我的2美分。如接受的答案所述,有更好更清潔的方法來做到這一點。
這是另一個很好的資源:http://jasonlewis.me/article/laravel-4-develop-packages-using-the-workbench –