问题描述
在下面的示例中,如何避免耦合:我们有两个模块:
- 客户
- 发票
发票模块具有“发票”模型,该模型具有与“客户”模块的“客户”模型异样(属于)。
如何在“客户编辑”部分中显示客户发票列表,而不生成链接?我的想法是在客户编辑视图中标记一个“挂钩”区域,以便能够使用发票模块的ServiceProvider中的DataTable注入HTML。
同样,如果试图从“客户”模块中删除客户,我的目的是传播事件,以便所有需要它的模块都可以执行操作。
对于雄辩的关系,我正在考虑使用resolveRelationUsing:
Customer::resolveRelationUsing ('invoices',function ($customer) {
return $customer->hasMany (Invoice::class);
});
这是整个系统的好习惯吗?这是避免耦合的有效方法吗?
例如,如果发票模块必须在客户模块的客户模型中添加一个字段... ,我应该怎么做?也许使用钩子将字段添加到视图中,并使用客户端控制器的update方法中的事件来了解何时从发票模块中更新新字段?
我的目的是创建尽可能独立的模块,以便能够消除其中的一个并使应用程序正常工作。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)