0

我继承了一个 Rails 3.1 应用程序,由乘客/nginx 提供服务。

我以为我必须从 ActiveAdmin 0.4 升级到 0.5,但这导致了其他问题,所以我找到了解决方法并降级到 0.4.0。

然后 Ruby 开始抱怨没有检出 formtastic-bootstrap gem。这是 Gemfile 中的行:

gem 'formtastic-bootstrap',   :git => "git://github.com/cgunther/formtastic-bootstrap.git", :branch => "bootstrap-2"

配置中肯定有一个 fb gem,但是 stackoverflow 上有人说要运行

bundle install --deployment

在我运行那个咒语之后,网站加载了。除了所有的 ActiveAdmin CSS 都消失了。我可以对文件 assets/active_admin.css 进行小修改,然后它们就会生效,但该网站在其他方面看起来就像是古罗马废话。

所以我在上述步骤之一中做了一些坏事——我通常以 root 身份运行 bundle install,但该站点归“web”所有。在 Ruby 抱怨找不到 formtastic-bootstrap 之后,我发现其中两个 gem 安装在 /home/web/.bundler/ruby/ (或类似的东西)中,因为 Ruby 一定一直在抱怨它们,所以我删除了它们。那里什么都没有。

运行另一个后bundle install,该站点将加载,但 CSS 没有生效。

我在不同的选项卡中加载了参考站点,并将生成的 HTML 与参考 HTML 进行了比较。唯一的区别在于加载 JS 和 CSS 的两行。在参考网站:

<link href="/assets/active_admin-e1b0dc3ef3753e264638b07b12174adb.css" media="all" rel="stylesheet" type="text/css" />
<script src="/assets/active_admin-385197d3f18a204049d4eb22bc9a033e.js" type="text/javascript"></script>

在我的:

<link href="/assets/active_admin.css" media="all" rel="stylesheet" type="text/css" />
<script src="/assets/active_admin.js" type="text/javascript"></script>

我知道 JS 和 CSS 正在加载,因为我看到了警报,并且其他东西都被着色了,而不是 ActiveAdmin 元素。但是 DOM 检查器显示参考站点正在从该 CSS 文件中为 body 元素提取各种东西,而对于我的页面,它只是从 resource://gre-resources/html.css 和不需要在此处重复的数据 URI。

错误控制台充满了通常的 jquery 和 google.maps JS 警告(它是一个 gmap 应用程序),但什么也没有跳出来。

这会为任何人敲响警钟吗?我收集看到未标记的 CSS 和 JS 文件引用的原因是因为我运行了“bundle install --deployment”,然后在情况变得更糟时运行了“bundle install --no-deployment”。我只是想把事情放回第 1 格。

那么我怎样才能清除所有内容呢?或者更好的是,是否有一堆魔法装饰物被缓存在某个地方?

4

1 回答 1

1

您可以尝试进行捆绑卸载

另一种可能性是重命名 Gemfile.lock 并重新运行捆绑安装,这将强制重新安装。

如果您正在使用版本控制,例如 Git,您可以运行 diff 并查看对代码进行了哪些更改并进行比较。

于 2013-03-17T07:05:53.057 回答