【发布时间】:2018-06-11 10:04:22
【问题描述】:
早安,
我有几个部分有代码。在代码选项卡中,我注意到代码选项卡具有相似的代码。以下是示例
部分 1
function onStart()
{
$x = MyModel1::where('myColumn', 'myValue')->first();
// lots of stuff using $x functions
$this['viewData'] = $x->getViewData();
}
部分 2
function onStart()
{
$x = MyModel2::where('myColumn', 'myValue')->first();
// lots of stuff using $x functions
$this['viewData'] = $x->getViewData();
}
MyModel1 和 MyModel2 都实现了相同的接口,所以它们具有相同的功能。
我的问题是,我应该把类似的代码放在哪里?我可以把它放在一个插件中,但感觉不正确。我可以创建一个基类并让部分调用父方法,但这是否意味着修改供应商文件夹中的代码?
【问题讨论】:
标签: plugins refactoring octobercms