Laravel:软删除不会填充“deleted_at”列;定期删除工作

时间:2017-07-21 19:27:59

标签: laravel-5

在这个上撕掉我的头发...无法在Laravel 5.x中使用软删除工作。

“deleted_at”列永远不会填充时间戳。

如果我从模型中删除“使用SoftDeletes”,它会删除该项目(如预期的那样),但软删除不会执行任何操作。

这是我的代码:

型号:

class UkRfpEntry extends Model
{

use SoftDeletes;

    /**
     * The attributes that should be mutated to dates.
     *
     * @var array
     */
protected $dates = ['deleted_at'] ;   

public function metadata()
    {
        return $this->hasOne('App\UkRfpEntryMetadata');
    } 


}

位指示:

 public function destroy(UkRfpEntry $uk_rfp_entry)
    {

        $uk_rfp_entry->delete();    

    }

(成功)迁移:

public function up()
    {
        Schema::table('uk_rfp_entries', function (Blueprint $table) {
             $table->softDeletes();
        });
    }

AJAX删除请求:

$.ajax({

    url: "{{ url('/uk_rfp_entries/') }}" + "/" + $(this).attr('id'), // the url where we want to POST
    type: 'DELETE',
    data:  {
            '_token': '{{ csrf_token() }}',
            '_method': 'DELETE',           

        },
    dataType: 'json',    
    success: alert('success')

    });

1 个答案:

答案 0 :(得分:0)

Grrr ....我的愚蠢遗漏。

use Illuminate\Database\Eloquent\SoftDeletes; 

需要在模型中。这解决了它。