【发布时间】:2015-12-19 18:34:21
【问题描述】:
我有一个 Laravel 应用程序,我将它用作 Joomla 中构建的更大应用程序的 API。我真的很喜欢使用 Laravel,并决定在 Joomla 应用程序中使用 Eloquent。我通过在 Laravel 应用程序中导入 bootstrap\autoload.php 文件并创建一个 Capsule
require JPATH_ROOT.'/../laravel_app/bootstrap/autoload.php';
$capsule = new Capsule();
$config = new JConfig();
$capsule->addConnection([
'driver' => 'mysql',
'host' => $config->host,
'database' => $config->db,
'username' => $config->user,
'password' => $config->password,
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => $config->dbprefix,
'strict' => false
]);
$capsule->setAsGlobal();
$capsule->bootEloquent();
这很好用,我可以使用 Eloquent。它直接从应用程序加载 Eloquent 模型。
我想知道如何让 Laravel 应用程序的其余部分在我的 Joomla 应用程序中运行,包括使用 Facades。
例如,我在 Eloquent 模型之一中使用了 Config.get('key'),在 Laravel 中调用时可以正常工作,但在 Joomla 中调用时会抛出错误。
Fatal error: Class 'Config' not found in laravel_app/app/Model.php on line 192
【问题讨论】:
-
我不知道你如何让它工作,但看看你忘记的错误消息:
use Congif;导入!请先这样做,然后用该信息更新您的问题。 -
如前所述,它在 Laravel 中工作,所以
use Config;并没有被遗忘。Config是一个 Facade,所以即使我在 Joomla 中导入了目标类,我仍然无法将它用作 Facade -
很抱歉我看错了你的错误信息。认为这是关于命名空间的错误。
-
看看流明:lumen.laravel.com
-
@nXu 我已经构建了一个完整的 Laravel 应用程序,我不想导入单独的框架,我想使用我已经拥有的。