我最喜欢的Laravel的标签用法

2023-06-01 00:00:00 标签 用法 最喜欢

除了使用@ extends,@ section和@yield来创建继承模板的能力之外,Laravel还使我们能够根据应用程序以我们希望的任何条件编写html。这是我最喜欢的Laravel的一些技巧,可以使开发过程更快,更轻松。

@if

当我们尝试在各种条件下显示数据时,此指令很有用。在Laravel看来,我们可以使用所需的@elseif数目,但请记住您的网站性能。

@if (count($data) === 1)
   <p>You only have one data</p>
@elseif (count($data) > 1)
   <p>You have more than one data</p>
@else
   <p>You don't have any data</p>
@endif

@auth和@guest

通常,我们可以使用@auth和@guest来检查用户是否已通过身份验证,或者不显示适当的按钮,例如,为未经身份验证的用户显示按钮Login,为已认证的用户显示按钮Logout。

@auth
   <button>Logout</button>
@endauth
@guest
   <button>Login</button>
@endguest

@for

如果我们想在Laravel的刀片中做一个简单的循环,我们可以像PHP的循环结构一样使用@for。

@for ($i = 0; $i <= 10; $i++)
    The current order is {{$i}}
@endfor

@ foreach

当我们在视图中显示数据列表时,可以使用@ foreach遍历变量以获取每个值。

@foreach ($users as $user)
   <tr>
     <td>{{$user->name}}</td>
     <td>{{$user->email}}</td>
   </tr>
@endforeach

@forelse

该指令用于处理我们传递的变量是否为空,以使用户知道没有要显示的数据。

@forelse ($users as $user)
   <tr>
     <td>{{$user->name}}</td>
     <td>{{$user->email}}</td>
   </tr>
@empty
   <tr colspan="2">
     <td>There is no user</td>
   </tr>
@endforelse

$loop

当我们执行循环时,变量$ loop将在循环内可用。这个变量提供了许多有用的信息,我最喜欢的是$ loop-> iteration来生成表中的序列行号。

@foreach ($users as $user)
  <tr>
     <td>{{$loop->iteration}}</td>
     <td>{{$user->name}}</td>
  </tr>
@endforeach

有关可用属性的列表,可以查看Laravel的文档。

@csrf

每当我们在Laravel中使用表单时,出于安全目的,我们都需要在表单中包括CSRF令牌字段。我们可以使用@csrf指令生成它。

<form method="POST" action="/user">
   @csrf
   ...
</form>

@method

在Laravel中,我们可以使用PUT,PATCH或DELETE请求。但是html表单不支持该方法,因此我们需要添加隐藏的_method字段。我们可以使用@method来创建它。

<form action="/user" method="POST">
   @method('PUT')
   ...
</form>

@error

我们需要在用户提出的每个请求中提供错误处理,尤其是在提交表单时。我们可以使用@错误在视图中放置一个位置,以向用户显示错误消息。

@error('title')
   <div class="alert alert-danger">{{ $message }}</div>
@enderror

那是我在使用Laravel开发时喜欢使用的一些技巧。

转:https://dev.to/suryawiguna/my-favorite-laravel-s-blade-tricks-2bgd

相关文章