我是Laravel的新手,我试图从一个表中删除一个项目并从其他2个表中删除它的图像和计划如何在laravel中执行此操作
这是项目的删除控制器
OpenDB
我怎么能这样做我发现有人说这应该从模型中完成,但我不明白。
这是项目模型
public function destroy($id)
{
$project = Projects::findOrFail($id);
$project->delete();
return Redirect::to('admin/view-project')->with('message', 'Project deleted successfully');
}
请任何人帮忙。
答案 0 :(得分:0)
您可以在laravel中尝试模型事件。检查此
class Projects extends Eloquent implements UserInterface, RemindableInterface
{
public static function boot()
{
parent::boot();
Projects::deleted(function($project)
{
$project->projectImages()->delete();
$project->projectPlans()->delete();
});
}
}
答案 1 :(得分:0)
考虑数据一致性时,更好的方法是在数据库层上实现外键。这会自动为你做,你不再需要考虑它。
请参阅https://laravel.com/docs/5.3/migrations#foreign-key-constraints