Access denied, Please sign in and make sure you have proper permission.
edit 就是出一个 form,update 就是执行更新吧。
edit 只是为 update 操作提供个界面而已
你卖了老房子,买了套新房子,于是你搬家了。
搬家你就得到派出所改户口本吧? ( change record )
那么你到派出所,拿一张表格 ( edit action, 由于是你去 get 一张表,所以用 get 动作 )
然后你填填填,填好了,把表格交回给派出所让他们给你 update 你的记录 ( update action,由于是你把更改信息提交给服务器,所以用 put 动作 )
然后就完事儿了。
这样说楼主就好理解了吧?
#3 楼 @blacktulip
……这个先容我好好理解一下
再问一个相关的小问题,是不是 edit 不一定在相应的 controller 下面,而 update 必然在 model 的 controller 下面?
比如说,我在 home 页可以 edit post。那么就在 home action 下写@post,但是 update action 依然写在 post controller 下 (比如 ruby on rails tutorial 中就是在首页显示 microposts)
也就是说,controller 中实际有 2 种 action,一种是对于显示的(get),一种是对于创建的(post)。create,update 这些 action 必然是写在相应 model 下的 controller 中的
是这样么?
update edit 这个两个次都是 修改的意思
rails 特意这么设计的,就是为了符合 restful。
如果只用一个词的话,比如 edit,
那么,action 的名字,就是 edit_get edit_put
create 和 new 也是同样的问题。
没有什么太深层的含义,就这什么设计的。
千万不要想太多。