通过使用<%= t(:something) %>
语句替换字符串来使页面可翻译引发了一种奇怪的行为,其中javascript script
标记是乱码。
以下是一个示例:
<script src="/assets/jquery.js?body=1" type="text/jipt>
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
<script src="/assets/modernizr.js?body=1" type="text/javascript"></script>
<script src="/assets/controls.js?body=1" type="text/javascript"></script>
导致这种情况的原因是什么?
为了记录,我正在运行Rails 3.2.3,Ruby 1.9.2p290,并使用常规资产管道在开发环境中生成脚本标记。
更新
我把它缩小到了页面的长度。显然,rails(或Webrick)开始将页面修改超过一定长度。
答案 0 :(得分:0)
问题最终与翻译无关。原因是一个与之相关的旧的openssl。
因此更新mac端口,并重新安装ruby 1.9.3(从源代码)修复了问题:
$ port selfupdate
$ sudo port upgrade outdated
$ rvm remove ruby-1.9.3-p125
$ rm -rf /Users/XXXXXXX/.rvm/gems/ruby-1.9.3-p125/
$ rvm install 1.9.3-p125
$ rvm use ruby-1.9.3-p125
$ gem install rails
$ bundle