ruby-on-rails – RoR之间的区别:url,:action,:form_for中的方法

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – RoR之间的区别:url,:action,:form_for中的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
文档中可能有答案,但我似乎找不到好的答案.
所以在三个方面:url,:action,:方法,当在Rails中使用form_for时,它们有什么区别?

解决方法

区别:url,:action和:method

:网址

如果要为任何特定控制器提交表单,请执行任何特定操作,并希望传递一些额外的参数(使用在控制器中定义的操作)

例如

<%= form_for @post,:url => {:controller => "your-controller-name",:action => "your-action-name"} do |f| %>

在上面的代码中,表单被提交给该控制器(你传递url)并转到那个(你传递动作)动作.它将默认为当前操作.

现在假设你想传递额外的参数,例如

form_for @post,:url => { :action => :update,:type => @type,:this => @currently_editing } do |f| ...

您可以传递额外的参数,如:type => @类型

所以:url是表单提交的URL.它需要您传递给url_for或link_to的相同字段.特别是你可以直接通过这里一个命名的路线.

:行动

form_for @post,:this => @currently_editing } do |f| ...

在上面的例子中,我们传递:action,如果我们想以不同的动作提交表单,那么我们通过:action和your-action-name表单被发布到该操作

方法

方法用于要为该动作传递的方法.有几种方法,如put,post,get …

例如

form_for @post,:url => post_path(@post),:method => :put,....

在上面的form_for中我们通过:method => :当这个表单提交它会使用put方法

猜你在找的Ruby相关文章