如何在Laravel array_map和link_to_route功能中使用FontAwesome图标

时间:2019-03-02 00:52:36

标签: php laravel laravel-5 font-awesome

我有这段代码,其中显示了分配给我的Entity模型的标签。

    {!!
        join(', ',
        array_map(function($o) {
        return link_to_route('entities.summary',
        $o->name,
        [$o->id],
        ['class' => 'btn btn-primary btn-sm']
        );},
        $o->tags->all())
        ) 
    !!}

问题

我想添加FontAwesome图标。我没有线索。有任何想法吗? 一种解决方案是驱动代码并进行foreach循环,但我更喜欢坚持使用现有的代码。

谢谢

1 个答案:

答案 0 :(得分:0)

link_to_route不支持您要执行的操作。默认情况下,它会转义标题,因此您不能注入html / fontawesome标签。

您可能需要重新编写一些代码,以将更直接的link_to()函数与手动路由注入配合使用。这将使您可以转义“标题”,并通过title参数在标签内添加自己的<span class="fa fa-icon ..."></span>代码。

这很粗糙,未经测试,主要的变化是使用以下选项创建自己的路线:

{!!
    join(', ',
    array_map(function($o) {
        return link_to(route('entities.summary', [$o->id]), // url
        "<your fa code>" . $o->name, // title
        ['class' => 'btn btn-primary btn-sm'], // attributes
        null, // secure
        false // escape
        );
        },
        $o->tags->all())
    ) 
!!}