2016-11-15 4 views
0

приведенный ниже код является кодом контроллера. Этот код работает, но значение удаляется только с страницы. Из таблицы значение не удаляется. Что я могу сделать, чтобы удалить значение с обеих страниц и таблицы?Как удалить значения из таблицы?

public function deleteconfirms($id) 
    {  
     $employee = CreateEmployee::find($id); 

     $employee->destroy($id);   

     Session::flash('flash_notification', array('level' => 'success', 'message' => 'employee deleted successfully')); 

     return Redirect::action('Admin\[email protected]'); 

    } 
+0

Вы используете softdelete? –

ответ

0

Проверьте приведенный ниже код. В общем, не называйте свою модель CreateEmployee, назовите ее только Employee. Это создаст путаницу.

public function deleteconfirms($id) 
{  
    $employee = CreateEmployee::destroy($id); 

    Session::flash('flash_notification', array('level' => 'success', 'message' => 'employee deleted successfully')); 

    return redirect()->action('Admin\[email protected]'); 

} 
0

Когда модели мягко удалены, они фактически не удаляются из вашей базы данных. Вместо этого атрибут deleted_at устанавливается на модели и вставлен в базу данных. Если модель имеет ненулевое значение delete_at, модель была мягко удалена.

Проверьте, используете ли вы следующий код в модели CreateEmployee.

use Illuminate\Database\Eloquent\SoftDeletes; 
class CreateEmployee extends Model 
{ 
    use SoftDeletes; 

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

Если вы не хотите мягкого удаления, удалите его и используйте прямое удаление.

Смежные вопросы