【发布时间】:2020-08-02 15:37:28
【问题描述】:
我正在尝试在我的 laravel 应用程序中使用 https://github.com/sebdesign/laravel-state-machine。但是该软件包未正确安装。我的控制器无法识别它。 首先,我在 composer.json 中添加了以下内容
"repositories": [
{
"type": "vcs",
"url": "https://github.com/sebdesign/state-machine"
}
]
然后我运行
composer require sebdesign/laravel-state-machine:1.0
然后我在我的 config/app.php 中添加了以下内容
'providers' => [
Sebdesign\SM\ServiceProvider::class,
],
'aliases' => [
'StateMachine' => Sebdesign\SM\Facade::class,
],
之后我使用
在 config/state-machine.php 中发布配置文件php artisan vendor:publish --provider="Sebdesign\SM\ServiceProvider"
就是这样。现在我试图在我的控制器中使用它:
// Using the facade
$stateMachine = StateMachine::get($article, 'simple');
但 StateMachine 无法识别。我来了
Undefined type 'App\Api\V1\Controllers\Resource\StateMachine'
我在这里遗漏了什么吗?我应该在控制器的开头添加 use 语句吗?
编辑:Laravel 5.1 谢谢
【问题讨论】:
-
看起来您没有包含
use声明。请相应地检查您的代码,并删除不相关的标签 -
是的,这是我的问题,我应该在使用声明中包含什么。请写下来好吗
-
是的,我只是想通了。我将使用 \SM\Factory\Factory 添加为 SMFactory;到我的模型
标签: laravel package composer-php service-provider