【发布时间】:2018-03-31 23:27:36
【问题描述】:
在我的插件的一个组件中,我有一个函数可以读取用户输入(使用Input::get()),创建一个Model 并将其保存到数据库中。数据通过 html 表单提交给该函数。现在我也想允许用户通过Rest API 添加新数据。因此,我在插件的根目录中创建了一个名为 routes.php 的文件,并定义了发布数据的路径。由于重用插件组件中已经可用的代码是合乎逻辑的,因此我尝试将路由映射到已经可用的组件函数:
Route::post('/items', 'Acme\Plugin\Components\ItemsList@addItem');
但这不起作用,我收到以下错误:
组件 Acme\Plugin\Components\ItemsList 不包含方法 getAfterFilters
这就是在我的 Rest API 中重用代码的方式吗?为什么会出现此错误?
【问题讨论】:
-
Acme\Plugin\Components\ItemsList 实现了一些接口,你必须在其中有一个 getAfterFilters 方法。或者不从该接口实现。
-
@Asheliahut 它扩展了
ComponentBase,就像OctoberCMS 中的所有组件一样。
标签: php laravel rest octobercms octobercms-plugins