gpt4 book ai didi

ruby-on-rails - :url, :action, 之间的 RoR 差异:form_for 中的方法

转载 作者:行者123 更新时间:2023-12-03 02:03:55 25 4
gpt4 key购买 nike

文档中可能有答案,但我似乎找不到好的答案。那么:url、:action、:method这三个,在Rails中的form_for中使用时有什么区别呢?

最佳答案

:url:action:method 之间的区别

:网址

如果您想为任何特定 Controller 、任何特定操作提交表单,并希望传递一些额外参数(使用在 Controller 中定义的操作传递给 Controller ​​)​​

例如

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

在上面的代码中,表单被提交到该 Controller (您传递 url)并转到该(您传递操作)操作。它将默认为当前操作。

现在假设您想传递额外的参数,然后例如

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

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

so :url 是表单提交到的 URL。它采用与传递给 url_for 或 link_to 的相同字段。特别是,您也可以直接在此处传递命名路线。

<小时/>

:操作

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

在上面的示例中,如果我们想在不同的操作中提交表单,那么我们传递 :action ,然后我们传递 :actionyour-action-name 表单已发布到该操作

<小时/>

:方法

method 用于指定要为该操作传递的方法。有几种方法,例如 putpostget ...

例如

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

在上面的form_for中,我们传递:method => :put,当提交此表单时,它将使用put方法

关于ruby-on-rails - :url, :action, 之间的 RoR 差异:form_for 中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13576745/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com