2011-10-05 105 views
0

我有一个HTML表格,其中包含每个旁边都有链接的数据。点击链接时,应发送一封电子邮件,并且该电子邮件应对应于链接被点击的行中的记录。点击链接发送电子邮件...使用GET?

所以,我点击链接,浏览器应该去/ some_controller /:id/resend_email。

我的问题是:我应该GET还是POST到这个URL?我知道发送电子邮件是一种POST类型的动作,但是如何在单击链接时完成此操作?

FWIW,我使用Rails 3

注:我不得不不使用Javascript这一点。

回答

0

如果参数与请求一起发送,则应该使用POST,否则使用GET

<%= link_to "Resend E-mail", :controller => 'some_controller', :action => 'resend_email', :id => your_id_here, :method => :post %> 

link_to有明确:method => :post需要JavaScript,虽然。

另一种方法是使用表单以POST方式提交按钮。

欲了解更多信息,你应该阅读这篇文章:Methods GET and POST in HTML Forms

+0

但是,如何在链接被点击时做到这一点? –

+0

Adam,使用:method =>:post使用Javascript。如果我在浏览器的设置中关闭Javascript,链接会在点击时执行GET请求,并且由于我的路由只接受POST,所以出现路由错误。不使用Javascript是必需的。 –

+1

我只是将它设置为使用GET,然后,诚实地说,或者创建一个表单并使用提交按钮来POST。 –

相关问题