4.4. 代码封装
代码封装
我们在实现众筹商品管理时,会发现大部分代码都与普通商品管理的控制器里的代码相同,假如之后我们添加了新的商品类型(比如秒杀),在编写后台管理时还需要再复制一份类似的代码,而且以后如果添加了一些公共的商品字段,就需要同时修改所有类型商品的后台控制器。
这种冗余的代码会让我们的项目产生较重的『技术债务』,因此我们需要把通用的代码封装起来,这样以后添加新的商品类型时只需要编写与普通商品不同字段的相关代码即可。
1. 代码分析
接下来我们来分析一下哪些地方是可以共用的:
index()
/create()
/edit()
这三个方法除了里面的页面标题不同,其他代码都是一样的;- 都需要
grid()
和form()
方法; grid()
方法中都需要按type
字段过滤;grid()
方法中都需要禁用『查看』、『删除』 和『批量删除』按钮;fo...