我正在尝试这样做,以便在向某人发送电子邮件后,如果他们点击电子邮件中的链接转到我的rails表单,那么该链接的URL中的某些内容将自动填充表单的一部分他们。
我想要一些美好而简单的东西。我认为它类似于localhost:3000 / form_page?form_field = value但这似乎不起作用。页面加载没有问题,但该字段仍为空。我在这里是正确的轨道还是这样的事情不可能?
更多信息:
在ID为'new_user'的表单中,我有这个字段。
<div class="input email required user_email"><label class="email required control-label" for="user_email"><abbr title="required">*</abbr> Email</label><input class="string email required" id="user_email" name="user[email]" type="email" value=""></div>
答案 0 :(得分:1)
你确实走得很好,但你必须走得更远。
表单页面由特定控制器的操作处理,在该操作上,您可以访问名为params
的变量。在此变量中,您可以检索请求的所有参数:)
为您的例子
class FormController < ApplicationController
def form_action
@form_value = params[:form_field]
end
end
就像我上面所做的那样,你应该将检索到的参数传递给控制器动作中的实例变量。然后可以在您的视图中访问此变量!
ERB:
<%= @form_value %>
HAML:
= form_value
将显示结果
答案 1 :(得分:0)
最简单的方法是在您发布的视图中添加此更改:
type="email" value="<%= params[:form_field] %>"
答案 2 :(得分:0)
啊,谢谢你们。我现在就开始工作了。
我把?var = blah放在url中,然后将字段的值设为params [:var],现在自动填充。