0

我正在使用 Rails 3.1.1 并且有一个网站,其样式表设置会根据季节等在一年中发生变化,如下所示:

<%= stylesheet_link_tag "application" %>
<%= stylesheet_link_tag 'themes/theme_winter.css' %>

theme_winter.css被放置在themes样式表文件夹中的一个文件夹中。

我正在使用 Memcachier,所以在线它看起来像这样:

  <link href="/assets/application-75b2717254d80c8ed37d5f955e2a0287.css" media="screen" rel="stylesheet" type="text/css" />
<link href="/assets/themes/theme_winter-a5de7f8f92d3d03061fd6aeb23ca2c40.css" media="screen" rel="stylesheet" type="text/css" />

这在我的本地机器上工作得很好,但在 Heroku 上,冬季样式表(和类似的)不会加载。如果我查看页面源并单击链接(在页面源中,以查看 css),我的 Web 浏览器中会显示此错误:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML>
  <HEAD><TITLE>Internal Server Error</TITLE></HEAD>
  <BODY>
    <H1>Internal Server Error</H1>
    undefined method `each' for nil:NilClass
    <HR>
    <ADDRESS>
     WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09) at
     www.mydomain.com:80
    </ADDRESS>
  </BODY>
</HTML>

我真的不明白为什么它undefined method为 nil:NilClass 指代每个'。这没有意义!

我相信这个问题与缓存有关,因为在我实现 Memcachier 之前它曾经工作过,但我也记错了。

无论如何,我都尝试添加:cache => false和上传新文件,git add -A但没有任何运气。

我真的看不出出了什么问题。我从未在 CSS 中看到过这样的错误!你可以帮帮我吗?

4

1 回答 1

0

这似乎与这个问题有关,为什么我不知道。但问题似乎与我没有安装 memcachier gem 有关。

于 2012-10-16T10:26:38.623 回答