AFAIK, PUT is the POST HTTP Request version of "edit" action... when you
send data that u want to change something (not insert) you send a PUT
request.

Att.,
--
***Thiago Belem*
Desenvolvedor
Rio de Janeiro - RJ - Brasil

+55 (21) 8865.9250
thiagobelem.net
[email protected]

*Skype / gTalk **»* thiago.belem.web
*LinkedIn* *»* br.linkedin.com/in/thiagobelem/pt*
Assando Sites*, curso de CakePHP *»* assando-sites.com.br


2012/2/1 McScreech <[email protected]>

> I'm trying to understand the use of the request->is method in the
> CakePHP 2.0.4 baked actions. I have reduced the generated add and edit
> functions from a controller baked with CakePHP 1.3.4 and 2.0.4 to
> pseudo-code below to demonstrate my question. I am basing my
> expectations on the opinion I derived from studying the template
> scripts, the cookbook and the links below (among others).
>
> The qualifier [ if (!empty($this->data)) ] in the old version is
> replaced by BOTH of the following in the new version:
> in add function:  [ if ($this->request->is('post')) ]
> in edit function: [ if ($this->request->is('post') || $this->request-
> >is('put')) ]
>
> I see the difference between the two as they are but would expect the
> following form:
> in add function:  [ if ($this->request->is('post')) ]
> in edit function: [ if ($this->request->is('put'))  ]
>
> 1) I think the is('post') portion of the edit function is redundant.
> What is the intended functional difference between the two as they are
> generated by CakePHP 2.0.4?
>
> 2) I am aware that the add view is generated _without_ the primary key
> field that is included in the edit view. Does the presence/absence of
> the primary key in the view served change the request/response
> mechanism called?
>
> Many TIA, McS
>
> // 1.3.4 version of add():
> if (!empty($this->data))
>        create record
>        if saved flash success; redirect; else flash failure;
>
> // 2.0.4 version of add():
> if ($this->request->is('post'))
>        create record
>        if saved flash success; redirect; else flash failure;
>
> // 1.3.4 version of edit($id = null):
> if (!$id && empty($this->data)) flash invalid; redirect;
> if (!empty($this->data))
>        if saved flash success; redirect; else flash failure;
> else read $id
>
> // 2.0.4 version of edit($id = null):
> $this->Model->id = $id;
> if (!$this->Model->exists()) exception invalid;
> if ($this->request->is('post') || $this->request->is('put'))
>        if saved flash success; redirect; else flash failure;
> else read $id;
>
> [1] http://book.cakephp.org/2.0/en/controllers/request-response.html
> [2] http://www.w3.org/Protocols/rfc2616/rfc2616-sec9#sec9.5
> [3]
> http://tools.ietf.org/html/draft-ietf-httpbis-p2-semantics-16#section-7.5
> [4]
> http://stackoverflow.com/questions/107390/whats-the-difference-between-a-post-and-a-put-http-request
> [5] http://stackoverflow.com/questions/630453/put-vs-post-in-rest
>
> --
> Our newest site for the community: CakePHP Video Tutorials
> http://tv.cakephp.org
> Check out the new CakePHP Questions site http://ask.cakephp.org and help
> others with their CakePHP related questions.
>
>
> To unsubscribe from this group, send email to
> [email protected] For more options, visit this group
> at http://groups.google.com/group/cake-php
>

-- 
Our newest site for the community: CakePHP Video Tutorials 
http://tv.cakephp.org 
Check out the new CakePHP Questions site http://ask.cakephp.org and help others 
with their CakePHP related questions.


To unsubscribe from this group, send email to
[email protected] For more options, visit this group at 
http://groups.google.com/group/cake-php

Reply via email to