Ruby on Rails:“找不到文件'jquery.ui.datepicker'”

时间:2013-10-04 00:56:46

标签: javascript jquery ruby-on-rails datepicker

好的,这让我疯了。我一直在按照说明在这里安装一个JQuery日期选择器:http://railscasts.com/episodes/213-calendars-revised但是我已经挂断了这个错误:

Sprockets::FileNotFound in Verifications#new

couldn't find file 'jquery.ui.datepicker'
  (in /app/assets/stylesheets/application.css:11)

这是application.js:

//= require jquery
//= require jquery.ui.all
//= require jquery_ujs
//= require_tree .

这是application.css:

 *= require jquery.ui.datepicker
 *= require_self
 *= require_tree .

并在Gemfile中:

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

任何人都能看到我错过的东西吗?

6 个答案:

答案 0 :(得分:29)

对于未来的读者。首先,确保在安装gem之后重新启动了rails服务器,因为krstck已经回答了问题。

然后,仔细检查您的宝石版本。 jquery-ui-rails更改了require中的5.0.0语法。现在你应该写:

//= require jquery-ui/datepicker

还要添加到css

*= require jquery-ui/datepicker

答案 1 :(得分:18)

在这里回答我自己的问题以防其他人犯同样的愚蠢错误。我重新启动了rails服务器,然后它运行了。

答案 2 :(得分:11)

对于Rails 5用户,要使用jQuery日期选择器,您必须将其添加到application.js

//= require jquery-ui/widgets/datepicker

这是你的application.css

/*
 *= require jquery-ui/datepicker
 */

你也可以使用通常的宝石版本:

gem 'jquery-ui-rails'

也可以重新启动服务器。

以下是documentation

答案 3 :(得分:8)

添加' jquery-ui-rails'在您的Gemfile上,并使用连字符而不是点来要求jquery-ui

//= require jquery-ui

或降级jquery-ui gem版本

gem 'jquery-ui-rails', '~> 4.2.1'

答案 4 :(得分:5)

从jquery-ui-rails 5.0.0降级到4.2.1为我修复了它。

答案 5 :(得分:1)

添加到此:我遇到了同样的问题,我最终通过将//= require turbolinks放在application.js中的jquery要求之前解决了它:

//= require turbolinks
//= require jquery
//= require jquery.ui.datepicker
//= require jquery_ujs
//= require_tree .