私は製品のチェックボックスリストを持っていますが、チェックボックスを使用して他のテーブルのすべてのデータと外部キーからも削除します。テーブルチェックボックスlaravelで複数のデータを削除する外部キーエラー
私はテーブルから、チェックボックスからチェックされたデータを削除するためにルーティングされているフォームを作成しました。
<form action="{{ route('admin.delproducts') }}" method="get" id="delprod">
{{ csrf_field() }}
<table class="table table-hover">
<thead>
<tr>
<th width="4%"></th>
<th width="17%">SUB-CATEGORY</th>
<th width="30%">PRODUCT NAME</th>
<th width="10%">QTY</th>
<th width="10%">STATUS</th>
<th width="25%">UPDATED</th>
</tr>
</thead>
<tbody>
@foreach($products as $key => $data)
<tr>
<td><input type="checkbox" name="products[]" value="{{ $data->product_id }}" /> </td>
<td><a href="#"> {{ $data->name }} </a></td>
<td><a href="#"> {{ $data->product_name }} </a></td>
<td><a href="#"> {{ $data->quantity }} </a></td>
<td><a href="#"> {{ $data->status }} </a></td>
<td>{{ $data->updated_at }}</td>
</tr>
@endforeach
</tbody>
</table>
</form>
<p data-placement="top" data-toggle="tooltip" title="Delete"><button class="btn btn-danger btn-sm pull-right delbtn" data-title="Delete" data-toggle="modal" data-target="#delete" ><span class="glyphicon glyphicon-trash"></span></button></p>
iveはフォームの外にボタンを作成しましたが、私はそのためのjavascriptを作成しました。ここに私のコントローラで
$(".delbtn").click(function() {
$('#delprod').submit();
});
私がやったことです:
public function deleteProducts(Request $request) {
Product::destroy($request->products);
return redirect()->route('admin.product');
}
この製品表には、私はまた、コントローラは、内のすべてのデータを削除することができますどのようにテーブルProduct_image
から外部キーを持っているので、私はエラーを得ましたProduct_image
product_id
のチェックボックスがチェックされていますか?
私はモデルProduct_image
を作ってみました、私のコントローラ
Product_image::destroy($request->products);
でこれをしようとしたが、それはそれは存在しdoes't言うので、それは私にエラーを与えます。チェックボックスで渡されている外部キーを削除するクエリを作成する上での提案はありますか? 。チェックボックスから配列を受け付けるクエリを削除するようなものですか?
お返事ありがとうございました。私は私の製品と製品のイメージとの関係がありません。手動で削除することはできますか? –
あなたはそのためのデータベースの手動クエリが必要...私は単に関係を作成すると言うでしょう –
こんにちは私は未定義の変数テーブルを持っています。私はこのようにしました:public function deleteProducts(Request $ request){ foreach($ request-> products as $ product_id){ $ table-> foreign( 'product_id') - >リファレンス( 'product_id') - > on( 'product_images') - > onDelete( 'cascade'); } Product :: destroy($ request-> products); return redirect() - >ルート( 'admin.product'); } –