返回顶部
首页 > 资讯 > 精选 >Laravel使用技巧有哪些
  • 460
分享到

Laravel使用技巧有哪些

2023-07-04 23:07:38 460人浏览 泡泡鱼
摘要

今天小编给大家分享一下Laravel使用技巧有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.胖模型,瘦控制器如果我们

今天小编给大家分享一下Laravel使用技巧有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

1.胖模型,瘦控制器

如果我们有一个非常复杂的查询构造器或原始 sql语句,我们应该将此查询移动到模型或仓库中。

坏的:

<?PHPpublic function index(){    $partners = Partner::where('email_verified_at', '!=', null)        ->with(['products' => function ($q) {            $q->whereDate('created_at', now());        }])        ->get();    return view('index', ['partners' => $partners]);}

好的:

<?phppublic function index(){    return view('index', ['partners' => $this->partner->newProducts()]);}class Partner extends Model{    public function newProducts()    {        return $this->where('email_verified_at', '!=', null)            ->with(['products' => function ($q) {                $q->whereDate('created_at', now());            }])            ->get();    }}

2.服务类中的业务逻辑

与上述第一点相关,我们应该有一个瘦控制器,然后我们应该将所有业务逻辑移动到单独的服务类中。 所以控制器应该只有一个职责,希望我们可以在其他控制器中重用这个服务。

坏的:

<?phppublic function store(Request $request){    $user = User::create();    $user->update(['last_login' => now()]);    dispatch(new UserCreated($user));    // ...}

好的:

<?phppublic function store(Request $request){    $this->userService->create($request);    ....}class UserService{    public function create($request)    {       // ...    }}

3.Eloquent 查询优于原生 SQL 语句。

使用 Eloquent 进行查询更具可读性,避免 SQL 注入,并且易于维护。

坏的:

<?phpSELECT *FROM `articles`WHERE EXISTS (SELECT *              FROM `users`              WHERE `articles`.`user_id` = `users`.`id`              AND EXISTS (SELECT *                          FROM `profiles`                          WHERE `profiles`.`user_id` = `users`.`id`)               AND `users`.`deleted_at` IS NULL)AND `verified` = '1'AND `active` = '1'ORDER BY `created_at` DESC

好的:

<?phpArticle::has('user.profile')->verified()->latest()->get();

4.DRY (Don’t Repeat Yourself)

我们应该考虑将可重用的逻辑/组件部分移动到单独的地方。
在 blade 模板中,我们可以使用组件来重用前端部分。在服务器中,我们可以将逻辑移动到一个单独的服务类、Eloquent scope作用域,甚至可以创建我们自己的包。

<!DOCTYPE html><html><head><title>DRY</title></head><body><h2>Custom Calendar</h2><x-custom-calendar></body></html>

5.不要在 Blade 模板中执行查询

尽管在 blade 模板中执行查询是可行的, 但最好不要这么做。

坏的。 将会造成 N+1 问题。

@foreach (User::all() as $user)    {{ $user->email }}@endforeach

好的:

$users = User::all(); // Server Query@foreach ($users as $user)    {{ $user->email }}@endforeach

6.使用数据库事务

如果我们有一些复杂而冗长的逻辑/查询,那么我们应该考虑使用数据库事务。通过使用此功能,我们可以在需要时轻松回滚数据库,以确保我们的数据不会保存到数据库中,因此我们确信我们的数据是可靠的。

<?phppublic function store(Request $request){    DB::beginTransaction();    $user = User::create();    $response = app('service')->create($user);    if (!$response) {      DB::rollback();      return;    }    // ...    DB::commit(); }

7.不要硬编码文本

我们不应该在代码/控制器中硬编码任何文本。这样以后很容易维护和扩展。如果我们想向用户显示消息,我们可以使用翻译,模型/类中的常量来设置任何值或配置文件来保存我们的配置。

trans('user.created'); // 'User Successfully Created'$types = Product::TYPES; // Const in a Class/Model

以上就是“Laravel使用技巧有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

--结束END--

本文标题: Laravel使用技巧有哪些

本文链接: https://lsjlt.com/news/347874.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Laravel使用技巧有哪些
    今天小编给大家分享一下Laravel使用技巧有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.胖模型,瘦控制器如果我们...
    99+
    2023-07-04
  • Laravel Eloquent使用技巧有哪些
    这篇“Laravel Eloquent使用技巧有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Laravel Eloqu...
    99+
    2023-07-04
  • Laravel HTTP Client技巧有哪些
    本文小编为大家详细介绍“Laravel HTTP Client技巧有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“Laravel HTTP Client技巧有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧...
    99+
    2023-07-05
  • Laravel模型时间戳使用小技巧有哪些
    这篇文章主要介绍Laravel模型时间戳使用小技巧有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!默认情况下,Laravel Eloquent 模型默认数据表有 created_at 和 updated_at 两...
    99+
    2023-06-22
  • Excel使用技巧有哪些
    这篇文章给大家分享的是有关Excel使用技巧有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.一键设置下拉菜单下拉菜单用得好的话,效率秒提升!那么怎么设置下拉菜单呢?先选中...
    99+
    2024-04-02
  • 使用JavaScript技巧有哪些
    小编给大家分享一下使用JavaScript技巧有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!JS-Tips控制台提示代码执...
    99+
    2024-04-02
  • Vue使用技巧有哪些
    小编给大家分享一下Vue使用技巧有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!数据不响应,可能是用法有问题前几天有朋友给我...
    99+
    2024-04-02
  • Css3使用技巧有哪些
    这篇文章主要为大家展示了“Css3使用技巧有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Css3使用技巧有哪些”这篇文章吧。 经典的css3实例...
    99+
    2024-04-02
  • Bash使用技巧有哪些
    本篇内容主要讲解“Bash使用技巧有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Bash使用技巧有哪些”吧!要是你整天使用计算机,如果能找到需要重复执行的命令并记下它们以便以后轻松使用那就...
    99+
    2023-06-05
  • vim使用技巧有哪些
    这篇文章将为大家详细讲解有关vim使用技巧有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、VIM常用操作1、插入命令a在光标所在字符后插入A在光标所在行尾插入i在光标所在字符前插入I...
    99+
    2023-06-05
  • CSS有哪些使用技巧
    本篇内容主要讲解“CSS有哪些使用技巧”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CSS有哪些使用技巧”吧! 1. 文字的水平居中 将一段文字置于容器的水平中点,只要设置text-a...
    99+
    2023-06-08
  • 使用Linux技巧有哪些
    小编给大家分享一下使用Linux技巧有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1:检查不是由你运行的程序难度:高级应用程序:bash(译注:UNIX或者...
    99+
    2023-06-16
  • NPM使用技巧有哪些
    小编给大家分享一下NPM使用技巧有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!以下记录一些NPM作为工具的一些使用技巧。npmrc.npmrc 做为npm的...
    99+
    2023-06-17
  • Git有哪些使用技巧
    这篇文章将为大家详细讲解有关Git有哪些使用技巧,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1. Git常用命令图Workspace:工作区Index / Stage:暂存区Repository:本地仓...
    99+
    2023-06-17
  • ADO.NET使用技巧有哪些
    本篇内容主要讲解“ADO.NET使用技巧有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ADO.NET使用技巧有哪些”吧!使用OleDbCommand的***实践 不同.NET框架数据提供程...
    99+
    2023-06-17
  • Git使用技巧有哪些
    小编给大家分享一下Git使用技巧有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Git,一个分布式版本控制系统,它已经成为了开源世界的源码控制默认工具,在4月...
    99+
    2023-06-16
  • Linux使用技巧有哪些
    这篇文章主要为大家展示了“Linux使用技巧有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux使用技巧有哪些”这篇文章吧。1.快速跳转命令 - z要是每次都要进入一个目录很深的文件夹...
    99+
    2023-06-15
  • vsFTPd使用技巧有哪些
    这篇文章将为大家详细讲解有关vsFTPd使用技巧有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、匿名服务器的连接(独立的服务器)在/etc/vsftpd/vsftpd.conf配置文件中添加如下几...
    99+
    2023-06-16
  • ubantu使用技巧有哪些
    这篇文章给大家分享的是有关ubantu使用技巧有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。打开超级用户权限的运行程序对话框你也许已经知道用Alt+F2来打开”运行程序”对话框,然后可以输入任何命令行运行之...
    99+
    2023-06-16
  • win10使用技巧有哪些
    今天小编给大家分享一下win10使用技巧有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。电脑锁屏相信大家都有这样的经历,...
    99+
    2023-06-28
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作