这主要是一个设计问题。我正在创建一个Laravel应用程序,无法弄清楚用于提供我想要的设计。我的Laravel应用程序是完全模块化的,每个模块都有自己的路由,配置,模型,控制器和所有内容,并使用ServiceProvider
加载它们。
我的问题如下:
我有一个Pages
模块,它由Page
模型(Eloquent\Model
)组成。其他模型使用此模块生成页面。
我希望其他模块扩展该模型。例如,如果我有PagesFiles
模块,那么Page
模块应该有办法访问其文件,例如Page->files
,我可以在实际Pages
内轻松完成模块具有简单的关系。但我需要这种方法,而不是在Page
类中实际编码,而是从其他类中编码。
我也不能只做PageWithFiles extends Page
,因为会有多个模块扩展相同的Page
模块,为其提供额外的功能。
如果我能提供更多信息来帮助我解决这个设计问题,请告诉我。