rails DataTables CSS未在生产模式下应用

问题描述 投票:1回答:1

我正在使用Rails 5和jquery-datatables-rails(3.4.0,最新)gem。

表上的CSS在开发模式下呈现良好。 我可以浏览CSS并看到它形成如下:

HTTP://本地主机:3000 /资产/数据表/ jquery.dataTables.self-MD5.css体= 1

但是,在生产模式下,不会应用任何样式。 CSS都被'预编译'或者进入: http://my.ip/assets/application-MD5.css

Chrome可以加载远程应用程序.css文件。 我验证了开发模式assets / dataTables / jquery.dataTables中出现了几个CSS类。 .css AND生产模式资产/应用程序* .css。 喜欢,

/* line 265, /Users/rb/.rvm/gems/ruby-2.3.1@flv/gems/jquery-datatables-rails-3.4.0/app/assets/stylesheets/dataTables/jquery.dataTables.scss */
table.dataTable,
table.dataTable th,
table.dataTable td {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

我在生产应用程序* .css中找到了相应的'table.dataTable td',它看起来是正确的!

但Chrome和Firefox拒绝渲染它们。 我究竟做错了什么? 这是在app / assets / stylesheets / application.css中:

*= require_tree .
 *= require dataTables/jquery.dataTables
 *= require jquery-ui
 *= require_self

这是生产模式的渲染头标记:

<link rel="stylesheet" media="all" href="/assets/application-MD5.css" data-turbolinks-track="reload" />
jquery css ruby-on-rails datatable
1个回答
0
投票

最终解决方案:

  1. 创建一个丢弃的新项目,rails new fakeProject

  2. 将所有rake资产管道设置从fakeProject / config / environments / production.rb复制到我的项目config / environments / production.rb中

  3. 推送到git,使用capistrano进行部署

  4. 在chrome中清除缓存,重新启动puma,查看css样式,获利$$$

不幸的是,我用于rails资产管道的一个设置让我感到害怕。 我从来没有想出哪一个,只是让他们核实。

© www.soinside.com 2019 - 2024. All rights reserved.