【问题标题】:product is not deleting产品未删除
【发布时间】:2019-01-23 09:42:46
【问题描述】:

他试图从管理站点删除产品(来自 db),但它显示错误页面,显示“找不到对象!”任何解决方案,

这是 ProductsController 的代码:

  public function deleteProduct($id = null){
    Product::where(['id'=>$id])->delete();
    return redirect()->back()->with('flash_message_success', 'Product has been deleted successfully');
}

view_products.blade.php:

  <a id="delProduct" rel="{{ $product->id }}" rel1="delete-product" href="javascript:" class="btn btn-danger btn-mini deleteRecord">Delete</a>

【问题讨论】:

  • public function deleteProduct($id) only, not ($id = null)...你使传递的值等于null,这就是它找不到产品的原因
  • 我们可以看看你的这个方法的路由定义吗?另外,您是否使用 Javascript 来执行删除请求?
  • @Mozammil Route::get('/admin/delete-product/{id}','ProductsController@deleteProduct');
  • @PatrikAlexits 还是同样的问题
  • 您是否使用 Javascript 删除产品?

标签: laravel eloquent laravel-5.7


【解决方案1】:

你能试试这个方法吗,虽然它是不同的,但我喜欢用它,特别是用 javascript 或 ajax 调用

    public function deleteProduct(Request $request){
    Product::find($request->id);
    return redirect()->back()->with('flash_message_success', 'Product has been deleted successfully');
}


<a id="delProduct" rel="{{ $product->id }}" rel1="delete-product" href="javascript:" class="btn btn-danger btn-mini deleteRecord">Delete</a>

我的 jquery 代码看起来像这样

$(document).ready(function(event){
event.preventDefault();
$('#delProduct').click(function(){
$id=$(this).attr('rel');
...then ajax call to the server here with the id

}); });

【讨论】:

  • 请把html和JavaScript代码贴出来,问题应该出在他们身上
  • 实际上我添加了关于删除任何产品的甜蜜警报,最初它正在工作但随后显示错误,因此我将其删除
  • 在锚标签上,您的 rel 的 product->id 是否返回任何值?尝试使用查看页面源查看它,看看 rel 属性是否有值
【解决方案2】:

试试这个:

Product::find($id)->delete()

【讨论】:

    【解决方案3】:

    这个怎么样?您可能不需要执行 $id = null。

    public function deleteProduct($id){
        $product=Product::find($id);
        $product->delete();
        return redirect()->back()->with('flash_message_success', 'Product has been deleted successfully');
    }
    

    【讨论】:

      猜你喜欢
      • 2022-06-22
      • 2020-02-17
      • 2019-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-27
      • 2019-01-19
      • 1970-01-01
      相关资源
      最近更新 更多