В Laravel 4 данные в списке можно удалить без использования тега <form>
. Но, в laravel 5, он говорит, что нам нужен тег form
с действием для удаления данных. В чем причина ??Зачем нужен тег формы для удаления данных в laravel 5?
ответ
Поскольку laravel получил функцию method_field (method) для эмуляции метода DELETE, PUT, PATCH. Он создаст скрытый ввод, который дает имя метода для laravel, когда запрос поступит в приложение.
Документирующие слова: «скрытое поле ввода, содержащее поддельное значение HTTP-глагола формы». Here
{!! method_field('DELETE') !!}
Контролер ресурсов ожидает все method_field. Для получения данных по умолчанию используется метод GET, чтобы сохранить его метод POST, для его обновления должен быть PUT или PATCH, а для удаления требуется поле DELETE.
http://laravel.com/docs/5.1/controllers Проверьте список ресурсов маршрутизации поля Метода
Метод method_field используется для ** генерирует скрытое поле ввода HTML, содержащее поддельное значение HTTP-глагола формы. ** Но что можно сделать без тега формы, почему использовать этот метод? – Drudge
Это правильный способ обработки формы, вы можете добавить поле csrf для цели безопасности «csrf_field()», и если вы используете маршрутизацию ресурсов. Как вы знаете, для обработки данных вы должны использовать форму. У вас есть сообщение об ошибке или только код satus вашего запроса? – Disfigure
то почему бы не редактировать метод требует этого метода ??? – Drudge
Laravel является RESTful структуры, Безмятежная контроллер следует стандартному плану для успокоительного ресурса (GET, POST, PUT/PATCH и DELETE), если вы хотите добавить кнопку удаления в вашем приложении это удобный Javascript код может помочь вам для всех кнопок удаления кода, написанного великим Джефри образом
https://gist.github.com/JeffreyWay/5112282
ветви для Laravel 5
Что делать, если я не хочу использовать маршрут RESTful? Я просто хочу объяснить, почему лараэль меняет эти вещи в laravel 5. Как и в laravel 4, нам это не нужно? – Drudge
, в этом случае вам нужно написать маршрут для каждого вызова на удаление для каждого контроллера прямо сейчас, вы вызываете маршрут Route :: resource ('page', 'PageController'), и у вас есть полный CURD с ресурсом, пользовательский маршрут будет маршрутом :: получить ('удалить/{идентификатор}', 'PageController @ deletePage') – umefarooq
, где это было сказано? Я все еще могу удалить данные без формы в laravel 5.2. – ClearBoth
, поэтому вы должны использовать method_field righ t? – Drudge
нет, с Eloquent Я могу удалить столько, сколько хочу в любое время. – ClearBoth