[ Laravel 从入门到精通 ] 路由进阶使用:模型绑定、兜底路由、频率限制和路由缓存

路由模型绑定 我们在使用路由的时候一个很常见的使用场景就是根据资源 ID 查询资源信息: Route::get('task/{id}', function ($id) { $task = \App\Models\Task::findOrFail($id); }); Laravel 提供了一个「路由模型绑定」功能来简化上述代码编写,通过路由模型绑定,我们只需要定义一个特殊约定的参数...

Laravel + Vue 使用示例系列:构建一个类似 Twitter 的 Web 应用

在这一篇示例教程中,我们将会构建一个类似 Twitter 的 Web 应用。我们将使用到 Laravel 5.6 和 Vue.js,并且在 Vue.js 中定义一些组件,此外,还会使用 Axios 来发送网络请求。当然,篇幅有限,我们不可能开发一个完整的 Twitter 应用,而是实现一个简化版:用户可以发送 Tweet 并在自己的时间线中看到,可以关注或取消关注其他用户,如果关注了其他...

基于 Laravel Sentry 扩展包实现 Laravel 学院异常实时监控及告警

应用上线之后,异常监控和告警是个必须要摆上台面的事情,否则等到用户反馈显得被动不说,而且往往已经是已经导致线上服务不可用一段时间了,这是我们不想看到的局面,本着早发现早处理,在第一时间及时响应的原则,我们有必要对线上异常和报错有一个实时监控和告警机制,一旦有异常,立即通过邮件等方式通知相关责任人,然后通过实时监控页面排查原因,进而定位问题进行处理。我们当然可以在异常时手动触发邮件发送,...

Laravel 学院文本编辑器及 XSS 攻击防范 —— 富文本编辑器 summernote 篇

接下来的几篇教程,学院君想就学院重构过程中用到的一些比较好的工具和扩展包做一些推介。先从编辑器和文本处理开始。 在本次学院重构过程中,一个重要的需求就是加入用户系统,并且让他们参与学院内容创作中来(UGC),那么这就需要为用户提供好的内容编辑器,这里由于老版学院基于 WordPress 构建,之前的内容都是通过富文本编辑器编辑的,那么很自然的,新学院为了兼容之前内容的编辑,就需要提供富文...

基于 Laravel 5.6 重构的新版 Laravel 学院正式发布了!

经过近一个月时间紧锣密鼓的重构开发,基于 Laravel 5.6 内核的新版本 Laravel 学院如期出现在大家面前,虽然正式上线过程中出了一些小意外,但好在有惊无险,这些问题一一被处理掉,这充分说明了一个道理:上线有风险,测试需谨慎!在正式给大家呈现新版本功能之前,先对近两天出现的学院崩溃问题做一个简单的复盘: 7月17号(昨天)学院首页502,不能访问的原因,是负载均衡配置域名有...

基于 Apiato 在 Laravel 5.6 中快速构建可扩展易测试的、API 驱动的应用

简介 Apiato 是一个基于 Laravel 5.6 的框架(5.5也支持),通过提供一系列适用于 API 开发的工具和函数,可以帮助我们快速构建可扩展、易测试、以 API 为中心的现代 PHP 应用。 从头开始开发一套 API 的所有功能总是件很费时间的事,为此,Apiato 为我们提供了应用 API 开发所需的基础组件,我们只需专注业务逻辑开发即可,从而更快地将 API...

通过 Laravel Chatter 扩展包在十分钟内快速为应用搭建问答/论坛系统

简介 Chatter 是一个简单的 Laravel 论坛扩展包,你可以在这里查看官方演示站点:https://devdojo.com/forums,代码仓库位于 GitHub:https://github.com/thedevdojo/chatter。 安装 & 初始化 通过 Composer 安装 Chatter: composer require "devdojo...

[Laravel 5.6 文档] 官方扩展包 —— 第三方登录解决方案:Laravel Socialite

简介 除了传统的基于表单的登录认证外,Laravel 还可以通过 Laravel Socialite 提供 OAuth 认证,目前支持的认证驱动包括 Facebook、Twitter、Google、LinkedIn、GitHub 和 Bitbucket。 注:其他平台的驱动可以在社区驱的 Socialite 提供者网站上找到。 安装 要使用 Socialite,首先需要通过 Co...

[ Laravel 5.6 文档 ] 官方扩展包 —— 全文搜索解决方案:Laravel Scout

简介 Laravel Scout 为 Eloquent 模型全文搜索实现提供了简单的、基于驱动的解决方案。通过使用模型观察者,Scout 会自动同步更新模型记录的索引。 目前,Scout 通过 Algolia 驱动提供搜索功能,不过,编写自定义驱动很简单,你可以很轻松地通过自己的搜索实现来扩展 Scout。 注:Algolia 是一个托管式的全文搜索引擎,我们可以通过其提供的 ...

[ Laravel 5.6 文档 ] 官方扩展包 —— 队列系统解决方案:Laravel Horizon

简介 Horizon 为 Laravel 提供了基于 Redis 的、拥有美观后台的、代码驱动配置的队列系统。Horizon 让我们可以轻松监控队列系统的关键指标,例如任务吞吐量、运行时间和失败任务等。 所有的队列进程配置都存放在一个单独的简单配置文件中,这样的话配置文件就可以存放到源码控制以便团队所有成员的协作。 安装 注:由于 Horizon 使用了异步进程信号,所以 P...