如何将jquery-ui添加到Ruby on Rails 3.1应用程序?

chr*_*ris 17 jquery-ui ruby-on-rails

我已经添加//=require jquery-ui到我的application.js文件,这似乎给了我javascript但我似乎无法得到样式表.如果我理解它应该进入,vendor/stylesheets但我如何将它们包括在内?

Jo *_*iss 12

也许使用jquery-ui-rails gem更容易(见公告).它把所有东西打包起来,所以"只是工作".


dan*_*iel 11

您可以使用谷歌CDN,在您的应用程序的head部分添加css主题.只需在%head部分下添加此application.html.haml(或转换为erb的相同内容).

css主题

%link{:href => "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.8/themes/ui-lightness/jquery-ui.css", :rel => "stylesheet", :type => "text/css"}
Run Code Online (Sandbox Code Playgroud)

如果你想让jquery-ui缩小.

%script{:src => "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.8/jquery-ui.min.js"}
Run Code Online (Sandbox Code Playgroud)


Ald*_*ldo 8

如果在Gemfile中包含'jquery-rails',则jquery-ui将包含在application.js中:

// =需要jquery-ui.min

如果你在Console中运行: Rails.application.config.assets.paths你将获得Rails将查看资产的所有路径.以我为例:

- /Users/aldo/Satio/Desarrollo/rails/subaquaclub/app/assets/images
- /Users/aldo/Satio/Desarrollo/rails/subaquaclub/app/assets/javascripts
- /Users/aldo/Satio/Desarrollo/rails/subaquaclub/app/assets/stylesheets
- /Users/aldo/Satio/Desarrollo/rails/subaquaclub/vendor/assets/javascripts
- /Users/aldo/Satio/Desarrollo/rails/subaquaclub/vendor/assets/stylesheets
- /Users/aldo/.rvm/gems/ruby-1.9.2-p290@subaquaclub31/gems/jquery-rails-1.0.13/vendor/assets/javascripts
Run Code Online (Sandbox Code Playgroud)

看到最后一行?如果你在那里办理登机手续,你会发现jquery-ui所以你去了.


Mar*_*kus 6

引用jquery-rails手册:

为了使用jQuery UI的主题部分,您还需要提供自己的主题CSS.有关更多信息,请参阅jqueryui.com.

所以,你必须自己包括或设计它们!只需.css在页面标题中包含主题即可.在Rails 3中你会把css放入public/stylesheets,不知道Rails 3.1.


Mic*_*aev 5

jquery-rails不再将jquery-ui作为其资产的一部分.你应该用gem 'jquery-ui-rails'它.

此外,要了解资产在rails中的位置,您可以执行以下操作:

paths = Rails.application.config.assets.paths
for path in paths do
  puts "Found in: #{path}" if Dir.glob("#{path}/*").grep(/jquery-ui/).present?
end
Run Code Online (Sandbox Code Playgroud)

这样可以轻松找到资产.


Sac*_*sad 5

只记得//= require jquery.ui.all 需要追求//= require_tree .

由于大多数Jquery UI功能都无法工作,因此浪费了我很多时间.


chr*_*ris 2

正如 epochwolf 在评论中指出的那样,denysonique 在这个问题上有答案。

Rails 3.1 和 jquery-ui 资源