我在视图中有以下代码:
= form_tag(new_demo_path, :method => "put", id: "demo-form") do
= submit_tag "Try out demo", :name => nil
这将设置一个可以访问7天的演示环境。当然,我不希望搜索引擎点击这个。由于它是一个put请求,这会有问题吗?我是否需要包含一些内容,以免他们点击此链接?
答案 0 :(得分:1)
前段时间我发现自己处于类似情况,我为Rails编写了一个负面的验证码插件:https://github.com/markets/invisible_captcha。它基于蜜罐策略,旨在提供更好的用户体验。
或多或少,您应该添加到表单中:
<%= form_tag(new_demo_path, :method => "put", id: "demo-form") do %>
<%= invisible_captcha %>
<% end %>
在您的控制器中:
invisible_captcha only: [:new_demo] # assuming new_demo is the action that handles the form