如何使插件组件在OctoberCMS中作为Rest API使用?

时间:2017-10-19 20:08:56

标签: php laravel rest octobercms octobercms-plugins

在我的插件的一个组件中,我有一个读取用户输入的函数(使用Input::get()),创建一个Model并将其保存到数据库中。数据通过html表单提交给此功能。现在我想允许用户通过Rest API添加新数据。所以我在插件的根目录中创建了一个名为routes.php的文件,并定义了发布数据的路由。因为重用我的插件组件中已有的代码是合乎逻辑的,所以我尝试将路由映射到已经可用的组件函数:

Route::post('/items', 'Acme\Plugin\Components\ItemsList@addItem');

但这不起作用,我收到以下错误:

  

组件Acme \ Plugin \ Components \ ItemsList不包含方法getAfterFilters

这是如何在我的Rest API中重用代码的?为什么我会收到此错误?

1 个答案:

答案 0 :(得分:2)

创建一个没有扩展的控制器,并为构造函数中的组件使用依赖注入

延伸
Illuminate\Routing\Controller

和dependecy injection

您可以使用"Route::resource"功能