【问题标题】:Submit form from e-mail rails 3从电子邮件提交表单 rails 3
【发布时间】:2013-08-01 08:14:43
【问题描述】:

我有一个通过 POST 方法将信息发送到服务的操作,我希望它通过链接从电子邮件中触发。

我已经在我的电子邮件模板中尝试过:

首先,在link_to标签中指定post方法:

<%= link_to 'click here', action_url(:id => @model.id), :method => 'post' %>

但该操作是使用 GET 方法触发的,并且出现路由错误。

其次,通过一个带有隐藏字段但无法识别 csrf 令牌的表单来执行此操作:

<%= form_tag action_url, :method => 'post' do %>
    <%= hidden_field_tag :id, @model.id %>
    <%= submit_tag 'click here' %>
<% end %>

有没有办法做到这一点?或者如果没有,我最好的选择是什么?

【问题讨论】:

    标签: ruby-on-rails-3 post actionmailer csrf


    【解决方案1】:

    无法发出 post 请求,因此只需为操作添加 get 路由。

    积极的部分:效果很好,没有并发症

    否定部分:由于参数是通过 URL 传递的,因此必须实现一些 before_filter 方法以确保安全

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-05
      • 2011-10-12
      • 2013-09-16
      • 1970-01-01
      • 1970-01-01
      • 2013-05-04
      • 2015-03-28
      相关资源
      最近更新 更多