我在Laravel 5.3中制作了一个锦标赛系统。
现在我想将核心(生成树)提取到插件中,并使其成为开源。
想法是做插件,然后用插件的代码和所有引用替换我的应用程序中的代码。
我正在进行演示,因此人们可以迁移种子必需的对象来生成他自己的锦标赛树。
我主要担心的是,在我的系统中,我有很多不属于插件的东西,但它们仍然在同一个表中。
在我的模型中,我删除了插件中不需要的许多字段/函数。
例如,在我的锦标赛模型中,我有一个处理权限的功能,因为并非所有用户都可以" crud"所有比赛。这个函数在我的插件中没有位置,因为我不会包含任何策略(这应该取决于每个用例)
另一个例子应该是打印树。在我的系统中,我允许用户打印树,但在我的插件中应该是核心功能,而不是可选的东西。
另外,我认为我应该只使用1个模型,我的意思是,我应该删除我的项目模型,并使用我的插件模型,因为它们将代表相同的数据。那么如果我删除前面提到的字段/方法怎么办?
对于我的模型,解决方案应该是我创建子对象并扩展我的插件模型,但这意味着要更改我所有的实际模型名称,这是一个好方法吗?
我应该如何管理迁移???我应该在插件中包含无用的字段吗?
此外,我应该使用哪种用户模型,Xoco \ my-plugin \ User或App \ User