ruby-on-rails – 尝试使用collection_select显示eamil时获取[email protected]

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 尝试使用collection_select显示eamil时获取[email protected]前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用 Ruby 1.8.7与Rails 2.3.9.当使用collection select创建电子邮件地址下拉列表时,电子邮件地址不会显示.相反,我在下拉列表中看到“[email protected]”.有没有导致这种转换?

在列表中看到一个电子邮件时,似乎有一些JavaScript被应用到下拉列表中的每个项目.当我只列出用户名时,javascript不在.

<script type="text/javascript">
/* <![CDATA[ */
3(function(){try{var s,a,i,j,r,c,l=document.getElementById("__cf_email__");a=l.getAttribute("cf_sec");if(a){s='';r=parseInt(a.substr(0,2),16);for(j=2;a.length-j;j+=2){c=parseInt(a.substr(j,16)^r;s+=String.fromCharCode(c);}s=document.createTextNode(s);l.parentNode.replaceChild(s,l);}}catch(e){}})();
4/* ]]> */ 
<script/>

解决方法

Hoa你是正确的这不是rails相关的.

我发现这是由CDN造成的,我们使用的是CloudFlare.作为其安全设置的一部分,它们掩盖了电子邮件.

您可以通过转到CloudFlare帐户上的CloudFlare设置来关闭功能,并关闭电子邮件地址混淆.

更新:这绝对是一个CloudFlare设置,可以防止电子邮件显示(在我的active_admin中看到这一点),但是您也可以在CloudFlare围绕电子邮件输出查找的输出添加一些HTML:

<!--email_off--> email@example.com <!--/email_off-->

参考:

> What is email address obfuscation

猜你在找的Ruby相关文章