【发布时间】:2018-12-20 11:18:17
【问题描述】:
假设我有与模型 Image、Card 等相关的 User 模型。这意味着当我创建一个新用户时,我应该同时创建 Image 和 Card 实例,例如我的控制器的 store 方法中有这样的东西:
DB::beginTransaction();
try {
$user->saveOrFail();
$imageObj = new Image();
$imageObj->user_id = $user->id;
// set the other fields
$imageObj->saveOrFail();
$cardObj = new Card();
$cardObj->user_id = $user->id;
// set the other fields
$cardObj->saveOrFail();
.......................
DB::commit();
}
return redirect('some');
}
对于超过 2 个相关模型,控制器中的代码过多,那么有没有办法重构此代码以获得更好的可扩展性?
【问题讨论】:
标签: php laravel design-patterns repository factory