php - 在 Laravel 5.3 Blade 中渲染动态 anchor 标记

标签 php laravel laravel-5.3 laravel-blade dynamic-html

最近几天我正在学习 laravel。似乎无法弄清楚如何在三元运算符内呈现动态 anchor 标记。下面是我的代码片段:

@foreach($task_list as $task)
  <td>{!!  $task->completed? 'Yes' : '<a href="/task/complete/$task->id" >Mark as complete</a>' !!}</td>
@endforeach

基本上我正在检查特定任务是否完成(通过 $task->complete 模型属性)。如果是,则显示字符串"is",否则呈现一个显示“标记为完成”的链接。此链接将用户带到路线“/task/complete/{任务的id}”,我将在其中进一步处理它。

我无法将任务 id 作为链接 url 的一部分(通过 $task->id 属性)。非常感谢一些帮助和知识分享

最佳答案

在 Blade 模板中使用 PHP 打印 HTML 不是一个好主意。我建议您使用简单易读的 @if 解决方案而不是三元运算符:

<td>
    @if ($task->completed)
        Yes
    @else
        <a href="{{ url('task/complete/'.$task->id) }}">Mark as complete</a>
    @endif
</td>

关于php - 在 Laravel 5.3 Blade 中渲染动态 anchor 标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45149485/

相关文章:

php - jquery中的ajax请求什么时候认为http post请求成功?

javascript - 如何将 html 表(由 JavaScript 动态创建)发送到 PHP 页面?

javascript - 如何在我的 mysql 结果上乘以 html 字段?

php - 如何扩展 Laravel 的 Auth Guard 类?

php - https 的 Laravel 条件 View

laravel - 重定向 Laravel 后如何打开弹出窗口?

php - 如何在 Laravel Blade 模板引擎中迭代二维数组

php - 它是一个简单的循环,但我不知道该怎么做

php - Homestead:通过重新安装盒子降级到 MySQL 5.6

php - Laravel 5.3 日期验证器 : equal to or after start_date