Intereting Posts
Процесс удаления одного и того же json-массива создает другой массив результатов для различной позиции значения Объедините два столбца в SQL для предложения WHERE Параметры GET уязвимы для SQL Injection – PHP «Класс XXX не является допустимым сущностью или отображенным суперклассом» после перемещения класса в файловой системе Изображение случайно повреждено (но загружается после обновления) и показывает «Ресурс, интерпретируемый как изображение, но переданный с типом текста MIME / html» Обозначьте теги привязки, которые имеют тег img как дочерний элемент Проблема при доступе к содержимому таблицы с использованием параметра статуса Symfony2 Form Validator – сравнение старых и новых значений перед запуском Yii2: Как добавить два поля в orderby () из Find () автоматическое перенаправление на чистые URL-адреса Как конвертировать в UTC Как создать одноразовую ссылку для скачивания с Amazon S3? Получение «json parser error» после отправки данных формы на сервер Как AUTOINCREMENT, начиная с определенного количества / смещения? Как получить символ из кодовой точки юникода в PHP?

В чем разница между методами destroy () и delete () в Laravel?

У меня небольшая проблема с Laravel 4. Я хотел бы использовать метод delete() в записи, но по какой-то причине он фактически не удаляет запись. destroy() делает, поэтому мой код хорош. Кроме того, если я Teetime::where('date', '=', $formattedDate)->count() в мое представление, я получаю тот, который является правильным. В чем проблема?

  if($action=="delete") { $teetime = Teetime::where('date', '=', $formattedDate)->firstOrFail(); // for some reason $teetime->delete() doesn't work Teetime::destroy($teetime->id); } 

  • destroy – правильный метод для удаления объекта напрямую (через объект или модель).

Пример:

 $teetime = Teetime::where('date', '=', $formattedDate)->firstOrFail(); $teetime->destroy(); 
  • delete может быть вызван только в построителе запросов

Пример:

 $teetime = Teetime::where('date', '=', $formattedDate)->delete(); 

Из документации:

Удаление существующей модели по ключу

 User::destroy(1); User::destroy(array(1, 2, 3)); User::destroy(1, 2, 3); 

Конечно, вы также можете запустить запрос на удаление для набора моделей:

 $affectedRows = User::where('votes', '>', 100)->delete(); 

Дополнительная информация: http://laravel.com/docs/eloquent