3

我注意到在本地我们收到了关于 7 个不同 jquery-ui 图像的错误,例如ActionController::RoutingError (No route matches [GET] "/public/ui-bg_highlight-soft_100_eeeeee_1x100.png")

这些资产确实存在于 jquery-ui 文件结构中。

我发现将 jquery-ui 框架 css 本身中使用的 url 从“ url(/images/ui-bg_highlight-soft_100_eeeeee_1x100.png”更改为“ url(/assets/ui-bg_highlight-soft_100_eeeeee_1x100.png”或“ url(ui-bg_highlight-soft_100_eeeeee_1x100.png”可以消除错误(尽管我也必须在rake assets:precompile本地执行)。然而,这似乎是一种不好的方法,而不是正确的做法。

解决这些错误的正确方法是什么?

4

3 回答 3

2

首先,我强烈建议使用 jquery-ui-rails gem 轻松地将 jquery ui 滚动到资产管道中。

在您的 Gemfile 中:

group :assets do
  gem 'jquery-ui-rails' # jquery ui
end

在您的 app/assets/stylesheets/application.css 中:

*= require jquery.ui.all

请注意,您只能要求您使用的 jquery ui 的部分,例如进度条或日期选择器,alajquery.ui.progressbar

在 app/assets/javascripts/application.js 中:

//= require jquery.ui.all

现在运行bundle install,瞧!你准备好了!

于 2012-10-16T22:29:42.810 回答
1

最终结果是:

  • 删除我的本地版本。
  • 将项目添加到 jquery js 和 css 清单文件中。
  • 使用 jquery-ui-rails gem
于 2012-10-26T01:32:30.490 回答
0

在浏览器中观察 404 Not Found 是什么路径,然后确保 query-ui 主题的 /images 目录已移动或链接到 Rails 应用程序中的该路径。

例子

我经历404:

http://localhost:3000/assets/images/ui-icons_ffffff_256x240.png

我的 jquery-ui 主题目录在 /vendor,所以图片的真实路径是:

RAILS_ROOT/vendor/assets/stylesheets/ui-lightness/images

因此,要修复 404,请将符号链接放置到预期的目录:

% cd vendor/assets/stylesheets
% ln -s ui-lightness/images images

现在,该 URL 提供图像。

于 2013-07-19T04:08:05.653 回答