我正在通过使用Rails第4版(Rails 3.2+)进行敏捷Web开发,我对button_to方法有些困惑。这本书以及我所做的每一个谷歌搜索都说button_to使用POST请求。但是,当我检查页面时,button_to似乎正在使用GET方法。button_to使用GET方法
现在,我可以有这个毛病,但我来自一个PHP的背景和POST方法总是意味着数据被传递到没有网址的服务器,并通过一个数组服务器端访问:
$_POST['form_item']
此外,GET请求指通过URL传递数据:
someurl.com/somepage?DATA=data_value
使用此button_to代码:
<%= button_to 'Add to Cart', line_items_path(product_id: product_id) %>
这将成为输出形式:
<form action="/line_items?product_id=4" class="button_to" method="post">
<div>
<input type="submit" value="Add to Cart" />
<input name="authenticity_token" type="hidden" value="vGT1scGqasbQAMxYwofXHCM62MfSyM/pNty69Ep5t38=" />
</div>
</form>
此表格上的动作似乎通过URL来传递数据(产品= 4?)。虽然我可以清楚地看到“method ='post'”,但是这不是使用GET吗?
@mischa感谢您的澄清。请发表您的评论作为答案。 – flyingarmadillo 2012-07-18 12:16:25