将 laravel 应用程序转换为流明

Posted

技术标签:

【中文标题】将 laravel 应用程序转换为流明【英文标题】:Converting a laravel application to lumen 【发布时间】:2016-02-22 01:02:10 【问题描述】:

所以,我一直在构建一个 laravel 5.1 API,经过几个月的工作,我意识到我应该一直使用 Lumen。

有没有办法将 laravel 应用转换为 lumen 应用?

【问题讨论】:

【参考方案1】:

Lumen 本质上是 Laravel 的精简版。应用程序结构是相同的,因此创建一个新的 Lumen 应用程序并从 Laravel 应用程序复制 app 目录应该是安全的。

但是,出于性能原因,Lumen 没有开箱即用的所有 Laravel 好东西,有些根本不存在。因此,根据您实施 Laravel 应用程序的方式,您可能需要更改以下一些内容才能迁移您的应用程序:

Route definitions 必须迁移,因为 Lumen 使用不同的路由器 Lumen does not use the .env file by default,所以如果你想让它工作,你需要在bootstrap/app.php 中取消注释Dotenv::load()DBMailQueue 等门面默认情况下也未启用。您可以通过在bootstrap/app.php 中取消注释$app->withFacades() 来启用它们。但是,即使您确实启用了它们,您 only get a portion 在 Laravel 中获得的外观也是如此 需要通过在bootstrap/app.php 中取消注释$app->withEloquent() 来启用Eloquent

我可能没有涵盖所有内容,但这是为了提供一个关于您应该注意什么的想法。所有这些东西都可以启用,但 Lumen 带来的性能优势主要是因为这些东西被禁用以消除开销,因此请尝试尽可能修改您的应用程序以利用 Lumen 默认提供的功能。

【讨论】:

之所以被选为答案,是因为 *** 说您在另一个之前发布了一分钟,并且经过深思熟虑,带有警告等。谢谢! 我肯定在使用 Eloquent,所以这可能是我最大的障碍。我使用的 cors 和 larasponse 软件包似乎都有 lumen 安装说明,所以这应该可以很好地工作。再次感谢!!【参考方案2】:

假设您使用的所有内容都在 Lumen 文档中并且实际上可用于 Lumen,您应该能够创建一个新的 Lumen 项目并将您的应用程序文件夹从 Laravel 拖放到新的 Lumen 项目中。

【讨论】:

我会尽快尝试。感谢您的提醒!

以上是关于将 laravel 应用程序转换为流明的主要内容,如果未能解决你的问题,请参考以下文章

如何ENV(“APP_DEBUG”,1),并登录::调试将影响流明/ Laravel的表现?

使用外部 Laravel 护照流明 api 进行 Laravel 客户端身份验证

在没有数据库队列驱动程序的情况下完成流明作业调度

带有标题集的流明/laravel中的CORS问题

软删除是不是适用于流明框架?流明的限制?

Laravel 流明反射异常