Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 能言善辩,删除无效,Laravel 5_Php_Mysql_Eloquent_Laravel 5_Delete Row - Fatal编程技术网

Php 能言善辩,删除无效,Laravel 5

Php 能言善辩,删除无效,Laravel 5,php,mysql,eloquent,laravel-5,delete-row,Php,Mysql,Eloquent,Laravel 5,Delete Row,我正在使用Elount和laravel 5开发一个web应用程序。问题是,我试图删除名为“Poundersacion”的表中的一行,但当我发送ajax删除请求时,服务器在删除所在行停止(它停止执行路由函数,但服务器继续运行),而不会抛出任何错误 以下是Poundacion的模型: <?php namespace App; use Illuminate\Database\Eloquent\Model; class Ponderacion extends Model{ prote

我正在使用Elount和laravel 5开发一个web应用程序。问题是,我试图删除名为“Poundersacion”的表中的一行,但当我发送ajax删除请求时,服务器在删除所在行停止(它停止执行路由函数,但服务器继续运行),而不会抛出任何错误

以下是Poundacion的模型:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Ponderacion extends Model{
    protected $table = 'Ponderacion';
    protected $fillable = array('ponderacionidearea', 'ConfiguracionDeExamenifconf', 'peso');
    public $timestamps = false;
}
我可以成功打印Poundacion的属性“比索”,但无法删除它。Poundacion具有指向其他表的外键,但没有其他表具有对Poundacion的引用。我可以用DB::语句删除Pounderacion的一行,但这不安全。成功删除的不会显示在控制台上


提前感谢。

对于AJAX测试,我总是希望在可能的情况下首先通过GET请求直接进行测试,然后在我知道底层代码正常工作后在AJAX帖子上进行分层测试

在这种情况下,服务器可能会抛出一个
致命错误
,这将为AJAX请求返回一个500错误,而不会返回更多信息

我会检查一下你的课程包括哪些内容。在Laravel 5中,默认名称空间不是控制器的全局名称空间。您需要在
异常
之前添加
\
,或将
使用异常
添加到类文件的顶部

还有两个提示:

  • 在您的模型上使用。如果您从未真正删除过一行,那么最好跟踪和审核您的数据库记录。DB存储空间非常便宜,Laravel在查询时会自动跳过删除的行
  • 使用IDE进行开发。一个好的编译器可以在运行时之前捕捉到很多这样的错误

我猜您不会使用Exception从全局命名空间导入它,是吗?
public function deleteConfig(Request $request){
            error_log('deleting');
            $s_area = Area::where('nombre', '=', $request->input('s_area'))->first();
            error_log(count($s_area->Configuracion->first()->Ponderacion));
            //DB::statement('delete from Ponderacion where idponderacion = 22');
            foreach ($s_area->Configuracion->first()->Ponderacion as $ponderacion){

                error_log($ponderacion->peso);
                try{
                    $ponderacion->delete();
                }catch(Exception $e){
                    error_log('failure');
                }
            }
            //$s_area->Configuracion->first()->Ponderacion->delete();
            error_log('succesfully deleted');
            $s_area->Configuracion->first()->delete();

        }