我无法让 WYMEditor 使用资产管道在 Rails 3.2 生产模式下正常工作。这是我的设置:
# app/assets/javascripts/application.js
//= require jquery
//= require jquery_ujs
//= require twitter/bootstrap
//= require wymeditor/jquery.wymeditor.min
//= require_tree .
WYMEditor 文件位于vendor/assets/javascripts/wymeditor/*
# in app/views/layouts/application.html.erb just above closing </body> tag
<script type="text/javascript">
$(document).ready(function() {
$('textarea').wymeditor();
});
</script>
在开发模式下一切正常。但是,在我完成rake assets:clean
并rake assets:precompile
启动我的服务器rails s -e production
之后,WYMEditor 不再工作了。我查看了public/assets/application.js
一下,似乎 WYMEditor 代码包含在该文件中。但是,我得到的错误似乎表明 WYMEditor 正在寻找与包含 WYMEditor 的页面相关的一些文件,而不是在public/assets/wymeditor
预编译过程中创建的文件夹中:
Started GET "/users/lang/en.js" for 127.0.0.1 at 2012-10-09 16:11:12 -0700
ActionController::RoutingError (No route matches [GET] "/users/lang/en.js"):
Started GET "/users/skins/default/skin.js" for 127.0.0.1 at 2012-10-09 16:11:12 -0700
ActionController::RoutingError (No route matches [GET] "/users/skins/default/skin.js"):
Started GET "/users/iframe/default/wymiframe.html" for 127.0.0.1 at 2012-10-09 16:11:12 -0700
ActionController::RoutingError (No route matches [GET] "/users/iframe/default/wymiframe.html"):
[snipped stack traces and more similar error messages]
经过多次谷歌搜索后,我发现一个页面似乎表明 WYMEditor 在包含其代码时不满意,application.js
并且它需要位于自己的单独文件夹中。但是,我不知道这是否真的是真的。让 WYMEditor 在生产模式下工作的推荐方法是什么?