11

当我尝试包括

<%= stylesheet_link_tag    "application" %>
<%= javascript_include_tag "application" %>

application.css 文件的内容为:

/*
* This is a manifest file that'll be compiled into application.css, which will include all the files
* listed below.
*
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
* or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
*
* You're free to add application-wide styles to this file and they'll appear at the top of the
* compiled file, but it's generally better to create a new file per style scope.
*
*= require_self
*= require social_stream
*= require_tree .
*/

application.js 文件的内容是

// This is a manifest file that'll be compiled into application.js, which will include all the files
// listed below.
//
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
// or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
//
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
// the compiled file.
//
// WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
// GO AFTER THE REQUIRES BELOW.
//
//= require jquery
//= require jquery_ujs
//= require social_stream-base
//= require social_stream-documents
//= require social_stream-events
//= require social_stream-linkser
//= require social_stream-presence
//= require social_stream-oauth2_server
//= require_tree .

我的 rails 应用程序不包括上述代码段中所需的 css 和 js 文件。但是当我将包含标签更新到特定文件时,这些标签被包含在内。IE

<%= stylesheet_link_tag    "social_stream" %>
<%= javascript_include_tag "jquery" %>

我认为存在链轮问题,它不能按预期工作,请咨询。

我会非常感谢你。

4

4 回答 4

14

应该是ruby版本的问题。您将使用 ruby2.0.0​​ ,尝试降级到1.9.2or 1.9.3。希望它会奏效。

于 2013-09-11T08:26:08.493 回答
8

纳扎尔侯赛因的回答帮助了我。这也取决于红宝石版本。如果您使用的是 v.2,请尝试降级到 v.1.9。如果您使用的是 rvm,这非常容易:

要安装 v.1.9.3,请使用:

$ rvm install 1.9.3

要使用 v.1.9.3 作为默认值:

$ rvm --default use 1.9.3

然后

  • 重启你的终端
  • 安装bundler宝石
  • bundle install
  • rake assets:clean RAILS_ENV=development
  • 启动你的服务器rails s

就这样。

于 2013-10-13T13:02:23.700 回答
5

我也遇到了这个问题,但使用的是较新版本的 Rails 和 Ruby。

检查日志,我从 Rails 缓存中获得了 javascript.js,因为服务器没有看到文件中的更改。我去移动了 require 行(只有一个),告诉 Rails 文件发生了变化并重新编译/使用。Wellm 为我做到了!

希望它可以帮助某人。

另一个重要发现是升级 Gemfile 中的 sprockets gem。

我有版本 2.2.1 并且有问题,升级到 2.2.2 后,它工作

gem 'sprockets', '2.2.2' 
于 2013-12-20T19:59:41.003 回答
1

您使用的是 sass 还是更少或类似的东西?

我刚遇到这个问题,我发现这是因为 application.css 文件包含 scss 代码,默认情况下它无法处理。

只需将文件重命名为 application.css.scss 即可在 Rails 4.2.1 下解决此问题。

于 2015-06-09T08:08:57.910 回答