Laravel - 如何显示所见即所得并截断字符串

Laravel - How to display WYSIWYG and also truncate the string

我正在为 Web 应用程序项目使用 Laravel-5.8。

在该项目中,我对名为 goal_description 的特定字段使用了文本编辑器,数据类型为 longtext。

public function index()
{
  $goals = Goal::all();
  return view('goals.index')->with('goals', $goals);
}

<tbody>
  @foreach($goals as $key => $goal)
    <td>
       {{$key+1}}
    </td>
    <td>
       {{$goal->goal_title ?? '' }}
    </td>
    <td>
       {{$goal->goal_description ?? '' }}
    </td>
  @endforeach 
</tbody>

我有两个问题:

  1. 如何在没有 HTML 标签的情况下显示 goal_description,但它会格式化字段

  2. 如何用ellpse...将字段截断到20的长度,然后点击椭圆时,它会显示所有内容。

谢谢。

问题 1> 使用 {!!$goal->goal_description ?? '' !!}

问题2>我真的不知道椭圆是什么。但是要截断字符串,只需使用 str 如下

{!! Str::limit($goal->goal_description, 20, ' ...') !!}
<p>{{str_limit(html_entity_decode($goal->goal_description),300)}}</p>

为了支持@Deepesh Thapa 的回答,你可以这样做吗?

{!! Str::limit($goal->goal_description, 20) !!}<a href="#"> ...</a>

或者您可以使用任何其他元素并使用 Ajax 来切换它