0
在我的邮件程序中,我生成了一个链接到我的注册表单,以便我可以将它包含在用户的电子邮件中。我想预先填写注册表单中的用户名和电子邮件地址。防止查询字符串中的转义字符
我创建一个实例变量@signup_query像这样:
@signup_query = "?name=" <<
CGI.escape(@name) <<
"&" <<
"email=" <<
CGI.escape(@email)
但是,当我在查看通话link_to
,Rails的编码查询字符串,它增加了“放大器;”到'&'。其结果是,我的params
哈希有钥匙“放;电子邮件”,而不是关键“电子邮件”所以在我的注册看,我有这样的丑陋:
= f.email_field :email, class: 'form-control', :value => params['amp;email']
这工作,但我知道必须有一个更好的办法。
正如我在OP提到的更多详细信息,编码的link_to在查询字符串,因此这不会改变任何东西(虽然它是生成的查询字符串一个更好的方式)的符号。 –
刚刚在我的rails控制台中试了一下,得到了它:'root_path(foo:CGI.escape('foo'),bar:CGI.escape('bar'))''我有一个很好的合成路径:'/?foo = foo&bar = bar&with&符号。你可以给我你用于不工作的'link_to'的代码吗? –
对不起@Remi我前几天移动,不再在这方面工作。 –