Ruby on rails 如何将jquery ui添加到RubyonRails3.1应用程序中?
我在application.js文件中添加了Ruby on rails 如何将jquery ui添加到RubyonRails3.1应用程序中?,ruby-on-rails,jquery-ui,Ruby On Rails,Jquery Ui,我在application.js文件中添加了/=require jquery ui,这似乎给了我javascript,但我似乎无法获得要包含的样式表。如果我理解正确,他们应该进入供应商/样式表,但我如何才能将他们包括在内?引用自: 为了使用jQueryUI的主题部分,您还需要提供自己的主题CSS。有关更多信息,请参见jqueryui.com 所以,你必须包括或风格他们自己!只需在页面标题中包含主题的.css。在Rails 3中,您可以将css放在Rails 3.1的公共/样式表中。您可以使用go
/=require jquery ui
,这似乎给了我javascript,但我似乎无法获得要包含的样式表。如果我理解正确,他们应该进入供应商/样式表
,但我如何才能将他们包括在内?引用自:
为了使用jQueryUI的主题部分,您还需要提供自己的主题CSS。有关更多信息,请参见jqueryui.com
所以,你必须包括或风格他们自己!只需在页面标题中包含主题的
.css
。在Rails 3中,您可以将css放在Rails 3.1的公共/样式表中。您可以使用google CDN将css主题添加到应用程序的头部部分。只需将这个application.html.haml添加到%head部分下(或者将相同的内容翻译成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"}
如果您想缩小jqueryui
%script{:src => "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.8/jquery-ui.min.js"}
正如《时代狼》在评论中指出的那样,denysonique在这个问题上有答案
如果在Gemfile中包含“jquery rails”,则jquery ui将包含在application.js中:
//=需要jquery-ui.min
如果您在控制台中运行:Rails.application.config.assets.path
,您将获得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
看到最后一行了吗?如果您在那里签入,您将找到jquery ui,就在那里。如果您在Gemfile上有jquery rails,只需执行以下操作:
//= require jquery-ui
或
两者都可以很好地工作。如果没有,请尝试更新jquery rails gem
别忘了css文件,在这里我跟随了一些关于另一个答案的文章:并通过以下方式使其工作:
*= require jquery-ui/jquery-ui.css
这是文件的路径:
vendor/assets/stylesheets/jquery-ui/jquery-ui.css
vendor/assets/images/jquery-ui/images/ (your theme images)
也许更容易使用(请参阅)。它将所有内容打包,以便“正常工作”。jQueryRails不再将jQueryUI作为其资产的一部分。为此,您应该使用gem'jqueryuirails'
此外,要了解资源在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
这应该可以很容易地找到资产。只要记住/=require jquery.ui。所有的都需要在/=require\u树之后。
因为这一点,我浪费了很多时间,因为大多数Jquery UI功能都不起作用。是的,这是一个选项,但我想知道如何包含来自供应商/资产/样式表的文件,如果这确实是我想要的。将jqeury-UI.css下载到public/stylesheets/并执行样式表链接标记(“Jquery UI”)你也可以把它放在其他目录中,只需更改路径。是的,这也可以,但是不能像js那样将它合并到application.css中吗?我是rails新手,请原谅我的无知。您也可以使用:all作为源:stylesheet\u link\u tag:allI尝试过,但供应商/资产/样式表中的文件似乎没有包括在内。重复:真棒。工作得很好。因为我不需要到处都使用jQuery UI,所以我在控制器的js文件(Rails 3.1,例如projects.js.coffee)中添加了上面的require行
paths = Rails.application.config.assets.paths
for path in paths do
puts "Found in: #{path}" if Dir.glob("#{path}/*").grep(/jquery-ui/).present?
end