编辑: 原来我最初的问题不再准确 - 这个问题与 dataTables gem 没有直接关系,我相信这与我的 Apache2 配置有关。
我似乎对 jquery-datatables-rails gem 与 rails 资产管道的配合有问题。
问题起初看起来与这个类似,但从那里遵循明显的解决方案路径并没有愉快地解决问题。
gem 位于我的 Gemfile 中,根据railscast 第 340 集的说明为我的一个 html 表安装和实现。在开发模式下运行应用程序运行bundle exec rails s
良好,所有 dataTables 功能都毫无问题地出现在网站上。
当我尝试在生产环境中运行该站点时(使用 capistrano 或仅bundle exec rails s -e production
在预编译资产之后),虽然它们都编译为公共/资产,但不会使用已编译的文件。
config.assets.compile = true
代替预编译时,它似乎也没有显示 dataTables 功能。(我相信两者是对立的,但我可能误解了)
当我进入页面并查看js错误控制台时没有错误,它只是呈现了一个计划html表。
我无法弄清楚是什么导致网页无法呈现数据表,而且我尝试过的每次搜索都以上面链接的问题以及一遍又一遍的其他五个页面而告终。这些解决方案似乎都不是我的铁轨野兽所渴望的。
你们中的任何人都对问题可能是什么有任何见解吗?
部分相关文件:
应用程序/资产/javascripts/charts.js.coffee:
jQuery ->
$('#charts').dataTable({
"oSearch": {"bSmart": "true", "sSearch": "vdo"}
"iDisplayLength": 50
})
应用程序/资产/javascripts/application.js
//= require jquery
//= require jquery_ujs
//= require dataTables/jquery.dataTables
//= require_self
//= require_tree .
应用程序/资产/样式表/application.css
*= require_self
*= require dataTables/jquery.dataTables
*= require_tree .
config/environments/production.rb:
PerfGrapher::Application.configure do # 此处指定的设置将优先于 config/environment.rb 中的设置
# Compress JavaScript and CSS
config.assets.compress = true
# make sure to compile js and css assets
config.assets.precompile += %w(*.js *.css)
# Generate digests for assets URLs
config.assets.digest = true
# disable static asset server
config.serve_static_assets = false
config.compile = false
结尾