Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> В чем преимущество использования DELETE/PUT ? 
:(
    Опции темы
Ripper
Дата 21.6.2013, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Lonely soul...
**


Профиль
Группа: Участник
Сообщений: 920
Регистрация: 30.6.2004
Где: г. Москва

Репутация: 1
Всего: 23



Использую фреймворк Laravel 4. В нем можно создать через консоль контроллер с дефолтными методами для операций CRUD. Дальше в роутинге прописываешь строчку - и все, все пути прописываются. Только вот скажем для удаления сущности нужно работать с DELETE, а для обновления с PUT.
Как поступает Laravel - создает форму, в которой в hidden поле написан метод. И если это PUT, то это на самом деле POST у которого hidden поле _method="PUT" ...

И все бы ничего, когда работаем с формами можно использовать стандартные хелперы чтобы нарисовать форму по заданному методу. Но вот например я хочу удалить сущность, и вариант "/api/files/15/delete" как GET запрос не пройдет. Я например сущности вывожу в таблице, где в каждой строчке хочу впихнуть ссылку на удаление - вместо ссылки нужно делать форму, плюс ко всему стили уже не как у ссылки и все такое.

Но в чем кайф от использования этих PUT/DELETE? 


--------------------
"Он знает: надо смеяться над тем, что тебя мучит, иначе не сохранишь равновесия, иначе мир сведет тебя с ума" - Над кукушкиным гнездом
PM MAIL ICQ   Вверх
Arantir
Дата 22.6.2013, 01:00 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Рыбак без удочки
**


Профиль
Группа: Участник
Сообщений: 960
Регистрация: 18.11.2012

Репутация: 16
Всего: 55



В самих по себе в них смысл в четкости и определенности. Например, можно было бы запретить своему приложению удалять что-либо по запросам, не соответствующим DELETE.

Поскольку ссылка — это всегда GET, то CRUD могут быть дифференцированы только при отправке формы. А поскольку в итоге получается только два варианта — либо ссылка, либо форма, — браузер умеет только два метода GET и POST.

Исходя из всего этого, для общения приложения с конечным пользователем использовать CRUD — это излишество. Только лишняя морока. Не говоря о том, что оно сделано косвенно (по сути — костыль).

Где он может пригодится, так это в создании и использовании API к приложению. В этом случае запросы к API можно отсылать программно и с любым методом. И соответственно их обрабатывать (см. первое предложение поста).

Это сообщение отредактировал(а) Arantir - 22.6.2013, 01:01


--------------------
interface Жопа {
    // ATTENTION: has to be implemented by every class of the project for proper project work
}
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0958 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.