首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Laravel 8 正式发布,一起来看看有哪些新特性吧

Laravel 8 已于昨天正式发布(非 LTS 版本),本次主版本发布引入了 Laravel Jetstream、模型类目录、模型工厂类、迁移文件压缩、频率限制优化、时间测试辅助函数、动态 Blade...下面我们一起来速览下这些新特性: Laravel Jetstream Laravel Jetstream 是在之前版本上进行优化和全新设计的 Laravel UI 脚手架代码: 其中包含了登录、注册、邮箱验证...、双因子认证(2FA)、会话管理、基于 Laravel Sanctum 的 API 支持、以及可选的团队管理等功能。...Jetstream 使用的 CSS 框架是 Tailwind CSS,并且提供了 Livewire 和 Inertia 脚手架选项,你可以任选其一进行前端组件开发。...使用工厂类中定义的 "suspended" 关联方法 User::factory()->count(5)->suspended()->create(); 迁移文件压缩 随着应用功能越来越复杂,需要创建越来越多的数据库迁移文件

2.6K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    竟然有人质疑我还在用Laravel开发?别忘了PHP是最好的语言。(2)模型工厂类

    下面我介绍一下目前Laravel最新版(8.0版本)的新特性: Laravel 8 通过引入 Laravel Jetstream,模型工厂类,迁移压缩,队列批处理,改善速率限制,队列改进,动态 Blade...Laravel Jetstream Laravel Jetstream 是为 Laravel 设计的精美的应用程序脚手架。...Jetstream 为你的下一个项目提供了完美的起点,包括登录、注册、电子邮件验证、双因子认证、会话管理、通过 Laravel Sanctum 提供的 API 支持以及可选的团队管理。...Laravel Jetstream 替代并改进了可用于早期版本的 Laravel 的旧式身份验证 UI 支架。...现在假定我们的 User 模型有一个 posts 关联方法,我们只需要执行下面的代码就可以生成一个有 3 篇文章的用户。

    2.8K41

    【Laravel系列7.4】安全相关

    认证体系 在 Laravel 中,自带了一套用户登录认证体系,这一套体系原来是直接框架自带的,现在剥离出来通过 laravel/jetstream 组件实现了。...默认情况下,我们安装 Laravel 框架后,会自带一个默认的 User Model ,这个 Model 就是这个默认用户表的模型类。...composer require laravel/jetstream // 使用 Livewire 栈安装 Jetstream... php artisan jetstream:install livewire...,方法内部会查询用户并进行比对,它默认走的是 User 这个 Model ,调用的数据表就是 users 表。...毕竟对于大多数项目来说,用户表的情况可能并不和框架所提供的完全一样,可能很多字段也不相同。不过原始的认证模块还是非常好用的,大家可以多多尝试。

    3.6K40

    竟然有人质疑我还在用Laravel开发?别忘了PHP是最好的语言。

    下面我介绍一下目前Laravel最新版(8.0版本)的新特性: Laravel 8 通过引入 Laravel Jetstream,模型工厂类,迁移压缩,队列批处理,改善速率限制,队列改进,动态 Blade...Laravel Jetstream Laravel Jetstream 是为 Laravel 设计的精美的应用程序脚手架。...Jetstream 为你的下一个项目提供了完美的起点,包括登录、注册、电子邮件验证、双因子认证、会话管理、通过 Laravel Sanctum 提供的 API 支持以及可选的团队管理。...Laravel Jetstream 替代并改进了可用于早期版本的 Laravel 的旧式身份验证 UI 支架。...现在假定我们的 User 模型有一个 posts 关联方法,我们只需要执行下面的代码就可以生成一个有 3 篇文章的用户。

    2.5K60

    Laravel 8 新特性和功能优化速览

    Laravel 8.0 版本即将在 9 月 8 号发布,作者 Taylor Otwell 在 Twitter 中陆续透露了一些新特性和功能优化,下面我们一起来看看: php artisan serve...Laravel 8.x 终于在初始化项目后在代码骨架中提供了 app/Models 目录,并将新建的模型类默认存放到这个目录,框架作者的个人喜好终究没有拗过开发者的需求!...Laravel 8.x 是一次小的主版本迭代,不是 LTS 版本,更多新特性,请关注 Laracon Online 大会,Taylor 会在这个大会上宣布更多 Laravel 8.x 的新特性和功能优化...,包括模型工厂、迁移压缩、批处理任务、任务撤销、频率限制、异常报告、事件监听、路由缓存、维护模式、Jetstream 等。...对于国内用户,等着新版本发布看最新版本文档就好了?。 声明:本文翻译整理自 Laravel News。 (全文完)

    1.2K10

    为什么 Laravel 这么优秀?

    Make Model # 我们的第一步是根据 Laravel 提供的 Artisan 命令生成对应的 Model;在实际的开发中我们通常会提供额外的参数以便生成模型的时候一起生成额外的模版文件,如数据库迁移文件...因为我们已经完成了数据表中字段的定义、表与表的关系、以及最重要的一步:如何将数据及数据之间的关系写入数据库中,下面简单的来介绍下在 Laravel 是如何完成的。...比如你在上一次变更操作中错误的设置了某个表的索引,那我理解的正确的做法不是回滚,而是创建一个新的迁移文件,并在新的迁移文件中 ALTER 之前的修改。...Livewire 和 Inertiajs 都是一种类前端框架,它们提供了一种更加高效的方式来管理前端页面,并且能更好的和 Laravel 整合在一起。但是它却带来了更高的学习成本和更多人力资源的浪费。...,他也得跟你走一样的路,并且 Laravel 团队说不定哪天还会弃用它们(如 Laravel-Mix)。

    26710

    Laravel8的迁移压缩、任务批处理、速率限制优化 | 文末抽奖

    2020年9月8号,Laravel发布了8.0版本。Laravel计划于2022年1月25日发布9.0版本。...下面我介绍一下目前Laravel最新版(8.0版本)的新特性: Laravel 8 通过引入 Laravel Jetstream,模型工厂类,迁移压缩,队列批处理,改善速率限制,队列改进,动态 Blade...Request $request) { return Limit::perMinute(1000); }); 因为速率限制器的回调函数传入的是一个 HTTP 请求实例,你可以基于请求或当前认证的用户来动态设置速率限制...比如你希望限制用户每分钟内每个 IP 地址最多发起 100 次请求,你可以使用 by 方法来实现这一功能: RateLimiter::for('uploads', function (Request $...Limit::none() : Limit::perMinute(100)->by($request->ip()); }); 使用 throttle 中间件 将刚刚创建的速率限制器绑定到路由或者路由组就可以了

    1.9K21

    解决DNS问题|WunderGraph云使用NATS JetStream

    最初,我们使用 Cloudflare Workers 将用户请求路由到正确的公共 IPv4 地址。所有数据都存储在最终一致的 Cloudflare KV 存储中。...此外,JetStream 允许我们观察变化,因此 Heimdall 实例可以得到有关变化的通知,并更新其路由表。重启后,它会将 JetStream 的最新状态加载到内存中。...因此,JetStream 也非常适合我们架构的其余部分。我们希望 JetStream 不仅仅用于存储路由表。NATS & JetStream 将是我们计划提供的其它几项服务的支柱。...还有更多…… 总之,我们对 JetStream 及其可能性感到非常兴奋。作为早期采用者,我们很高兴与社区分享我们的经验和知识。如果你有兴趣帮助我们解决未来的一些挑战,请随时联系我们。...他也是一个开源爱好者,喜欢与社区分享他的知识。你可以在Twitter[6]或者GitHub[7]上找到他。

    1.2K30

    从0开始做一个审批模块

    具体的需求场景 •允许用户申请加入团队或者项目•申请之后系统推送审批通知给对应的管理员•管理员可以对申请进行审批:通过或者拒绝•审批通过则申请者顺利加入团队/项目中,否则申请无效•审批结果推送给管理员以及申请者...至此我们申请的数据表就建立完毕了,我们来看看成品: ? 程序设计 数据表建完了,接下来我们一起来看一下,在程序上我是怎么设计的。...审批通过则根据用户的申请动作做出相应的处理;审批不通过则啥都不干发送通知就行了。就目前的需求场景也就是将申请者加入到对应的项目或者团队中。...但是有个问题,如果申请的并不是加入到团队呢?这个时候,各种 if、else 、switch 就全跑出来了。秉承着 Laravel 优雅的原则,我打算这么干: 表中的数据进行展示的话,那得一条条数据进行遍历,判断当前用户是否可以看到本条申请.....

    1.7K10

    laravel 学习之路 数据库操作 Migrations

    前面我们设置好了数据库,可以开始对数据库操作了但是前提是我们得有表啊,说到数据库做开发的肯定能知道其中的辛酸苦与泪。...那laravel怎样来帮助我们的呢? 这就要说 laravel 内置了表迁移的功能,迁移就像是数据库的版本控制器,让你的团队更容易修改和共享程序的数据库结构。...Laravel 的 Schema 门面 提供数据库无关的支持,用于在所有 Laravel 支持的数据库系统中创建和操作表 创建迁移 使用 make:migration Artisan命令来创建迁移 php...一共有两个方法 up 和 down ,up 方法是用于新增数据库的数据表、字段或者索引的,而 down 方法与 up 方法执行操作相反是用来删除表的。...修改字段 创建表的方式我们已经学会了,除了创建表,我们还经常需要改变表结构,默认的 users 并没有 deleted_at 字段,我们如果想为 用户 也增加一个类似回收站的字段怎么办呢?

    2.3K20

    推荐超好用的 6 款 Laravel Admin 管理模版

    优点 由 Laravel 官方团队创建,与 Laravel 功能和设计理念保持一致 可与现有 Laravel 项目快速集成 UI 界面整洁美观 缺点 定制化能力相对较低 无免费试用,需要付费(小型项目...图片 主要特征 与 Nova 的开箱即用不同,Orchid 需要您通过名为 screen 的类来创建管理模板的逻辑和外观。...Voyager 是围绕 BREAD 功能构建的,您可以指示任何表的浏览、读取、编辑、添加和删除功能。...,以实现完整的CRUD功能,包括模型、控制器、组件模版、路由、测试案例、数据表等,完成这些后,就会有一个按照您的要求配置出的 Laravel 管理网站。...,您选择的工具将取决于您项目的具体要求以及您团队的优势。

    7.7K41

    Chrome vs Firefox 性能之争,到底哪家强?

    在 2021 年末到 2022 年初,Chrome 97 和 Firefox 95 相继发布,而外国科技媒体 Phoronix 也在近期发布了两款浏览器在 Linux 桌面上的测试数据,让我们一起来看下双方的表现如何...图片来源 Phoronix 首先是 JetStream 基准测试,这个测试用于测量 Web 浏览器中 JavaScript 和 WebAssembly 操作的性能。...看起来 JetStream 更支持 Chrome,至少在 Linux 桌面上是这样的。...在场景上,Kraken 尽可能的去模拟用户的正常行为,以保证测试场景的合理性。结果以毫秒为单位,测试结果时间越少说明性能越好。Chrome 97 与 Firefox 95 差距明显。...总体而言是各有千秋吧,其实这种良性竞争是我们这些用户们最乐见其成的,毕竟任何行业一家独大的局面,是不会促进新技术以及性能的发展的。

    1.8K20

    通过 Tinker 实现 Laravel 命令行交互式 Shell

    REPL 与 PsySH Laravel 自带了一个功能强大的 REPL —— Tinker,所谓 REPL,是 Read–Eval–Print-Loop 的缩写,这是一种交互式 Shell:获取用户输入并执行它们...Laravel Tinker 就是基于 PsySH 实现的,与 Artisan 主要用于编写和执行 Artisan 命令不同,通过 Tinker,我们可以在命令行中实现与 Laravel 应用的各种交互...Laravel Tinker 使用 下面我们一起来看一下如何通过 Tinker 赋能本地 Laravel 开发。...比如模型和服务,你可以使用控制台来创建一个新的模型,将其保存到数据库,然后查询这条记录(如果之前没有运行过 php artisan migrate 命令创建 users 表,先运行 migrate 命令创建...): 当然,我们还可以通过工厂方法 factory() 批量创建用户,这在测试的时候很方便,比如说我们随机创建三个用户: 此外,Tinker 还是个手动触发队列任务、体验服务和事件的好地方,例如,下面我们从容器获取一个日志服务并新增一条日志

    1.9K30

    两个非常棒的 Laravel 权限管理包推荐

    它还具有 Spatie 和 Bouncer 的包中没有的团队功能。 还有其它的几个选择,大部分似乎都过时了然后也很久没有被维护了。...这两个包都已经假设你已经有一个默认的 Laravel 用户数据库表,但没有任何角色和权限的结构。 它们会添加自己的表和字段。 这两个包都在 README 上有非常清晰的文档来描述各自的用法。...说明: 字段 guard_name 具有默认值 web — 允许你使用多个 guard; 正如你看到的,有两个权限 中间表 — 角色和用户; 字段 model_type 具有默认值 App\User ,...然后,permissions 是附加到 entity 的一组功能; Entity (在所有表中)是分配权限的对象。它可能是角色或用户。...因此,与 user_id 或者 users 表没有直接关联,这跟 Spatie 的包一样; 还有一些不同于前者的字段:abilities.title,abilities.only_owned 和 roles.level

    4.2K30

    苹果确认Meltdown和Spectre漏洞影响所有Mac和iOS设备

    苹果表示,即将发布的 Safari 修复方案不会对 Speedometer 和 ARES-6 造成“可测量的影响”,且对 JetStream benchmark 的影响也不到2.5%。 ?...但是与 微软等厂商相比,苹果的这份声明其实已经算晚的了。...由于实现漏洞利用需要在用户的 Mac 或 iOS 设备上加载恶意应用程序,因此建议用户仅从可信来源(如 App Store)下载软件。...我们将继续开发和测试这两个漏洞的进一步应对方案,会与即将更新的 iOS、MacOS、tvOS 和 watchOS 一起发布。...我们将继续针对 Specter 影响的操作系统开发和测试进一步修复方案,会与即将更新的 iOS、MacOS、tvOS 和 watchOS 一起发布。 2018 年 1 月 4 日

    92280

    PHP-web框架Laravel-MVC架构

    Model在Laravel中,模型是处理与数据库交互的主要组件。它们代表着应用程序的数据层,并且负责从数据库中检索数据、对数据进行操作并将数据存储回数据库中。...模型通常与数据库表相对应,并提供了一些方法来执行常见的数据库操作,例如创建、更新和删除数据。...Model { // 模型和表之间的关联 protected $table = 'users'; // 允许批量赋值 protected $fillable = ['name'...Laravel使用Blade模板引擎来创建视图,Blade提供了一些简单但强大的语法来生成动态内容。下面是一个简单的视图示例,它使用Blade模板引擎来生成一个包含模型数据的HTML表格:一起以生成Web应用程序的响应。控制器通常包含多个动作(action),每个动作对应一个HTTP请求和响应。

    1.9K41

    Wizard 开源文档管理系统 1.0 发布啦

    后来随着团队的壮大,前后端分离,团队分工的细化,仅仅采用 Markdown 开始变得捉襟见肘,这时候,我们首先想到了使用开源界比较流行的 Swagger 来创建开发文档。...项目中的文档仅仅用Swagger也是不够的,它只适应于API文档的管理,还有很多其它文档,比如设计文档,流程图,架构文档,技术方案,数据库变更等各种文档需要一起维护起来。...起初Wizard项目的想法比较简单,只是用来将 Markdown 文档和 Swagger 文档放在一起,提供一个简单的管理界面就足够了,但是随着在团队中展开使用后,发现在企业中作为一款文档管理工具来说,...用户权限管理 参考了 Gitlab 的权限管理方式,在用户的身份上只区分了 管理员 和 普通用户,通过创建用户组来对用户的权限进行细致的管理,同时每个项目都支持单独的为用户赋予读写权限。...文档差异对比 在团队协助中,经常会出现很多人修改同一份文档,为了避免冲突,文档修改后,其它人在提交旧的历史版本时,系统会提示用户文档内容发生了变更,用户可以通过文档比对功能找出文档中有哪些内容发生了修改

    2.7K30

    Laravel基础二之Migrations和验证

    一、Migration创建数据表与Seeder数据库填充数据 数据库迁移就像是数据库的版本控制,可以让你的团队轻松修改并共享应用程序的数据库结构 1.1 创建迁移 php artisan make:...每个迁移文件的名称都包含了一个时间戳,以便让 Laravel 确认迁移的顺序。 --table 和 --create 选项可用来指定数据表的名称,或是该迁移被执行时是否将创建的新数据表。...up 方法可为数据库添加新的数据表、字段或索引,而 down 方法则是 up 方法的逆操作。可以在这两个方法中使用 Laravel 数据库结构生成器来创建以及修改数据表。...区别与注意 1....::table("表名")->where(条件)->get(); 2.模型与数据表的绑定 创建Model类型,方法里面声明两个受保护属性:$table(表名)和$primaryKey(主键) <?

    1.7K30
    领券