Laravel-updateOrCreate还是同步方法?

时间:2019-01-28 21:33:00

标签: laravel laravel-5

我试图查看我最好的路线应该是什么,但是为了简化起见,我将使其听起来比实际要简单得多。

我有两个模型,一个叫做donor,另一个叫做donation。对于关系,donor有许多donations

donor模型的编辑表单中,我能够从同一表单创建,更新或删除donations

由于我可以使用updateOrCreate,因此更新和创建现在很容易。但是,如果我要删除捐赠怎么办?

我是否要执行实际查询,以过滤掉仍在编辑表单中(因此未被用户删除)的捐赠ID,然后从那里删除模型?还是有更好的方法来处理此操作?

谢谢。

1 个答案:

答案 0 :(得分:0)

在您的 DonationController 中,您可以通过以下查询选择要删除的捐赠:

public function destroy($id)
{

 $donation = Donation::where('donor_id','=', $id)->get();
 $donation->delete();

}

在您看来,您可以创建一个删除表单,然后他们将其发送到控制器中的此功能。我认为最好的方法是做一个foreach,然后将捐助者的捐款循环到内部。

@foreach($donor->donations as $donation)
{
  <form method="POST" action="{{route('donor.destroy', $donation->id)}}">
  <button type="submit">Delete {{$donation->id}}</button>   
  </form>
}
@endforeach