2011-11-25 138 views
0

我已经把的fancybox(jQuery插件)内部资产/ JavaScript的/包括/ jquery.fancybox-1.3.4的Rails 3.1.3无法访问内部资产/ JavaScript的文件夹中的文件

这个位置之前,我也尝试过把它放在/ vendor/assets/stylesheets/jquery目录下。

我得到这个奇怪的错误&为什么不导轨能够获得特定的文件时,它在那里。

-------------开发日志----------------

入门使用“/供应商/资产/样式表/ jQuery的.fancybox-1.3.4/fancybox/jquery.fancybox-1.3.4.pack.js“for 127.0.0.1 at 2011-11-25 13:30:42 -0800

ActionController :: RoutingError(No route matches [GET] “/vendor/assets/stylesheets/jquery.fancybox-1.3.4/fancybox/jquery.fancybox-1.3.4.pack.js”):

渲染/Users/jayparteek/.rvm/gems/内救援/布局[email protected]/gems/actionpack-3.1.3/lib/action_dispatch/middleware/templates/rescues/routing_error.erb( 0.5ms)

--------------日志2 -------------------------

的ActionController :: RoutingError(无路由匹配[GET] “/vendor/assets/javascripts/fancybox-1.3.4/jquery.fancybox-1.3.4.pack.js”):

回答

0

Rails不加载你的*/assets/javascripts树自动,只是该目录中的文件。并且默认情况下,它只会预编译application.js和任何与非.js扩展。

我建议你重命名文件的fancybox只是fancybox-1.3.4.js。使用Rails 3.1,资产连接起来并输出前精缩,所以没有太大的必要,甚至使用缩小的版本,但如果你这样做不会伤害任何东西。

你应该把jQuery插件直接在vendor/assets/javascripts/,然后将它们包括到app/assets/javascripts相应的文件(可能application.js),像这样(假设的application.js):

//= require jquery 
//= require fancybox-1.3.4 
//= [any other requires here] 
//= require_self 

然后你在布局中使用javascript_include_tag 'application' 。瞧!

+0

里面的application.js我粘贴// =的fancybox-1.3.4。 &我把fancybox文件放在需要的文件夹中。它仍然给了我这个错误。我知道那个文件在那里。 3000 /资产/ name_of_file:在顶部 –

+0

早些时候,我无法从本地主机达到资源文件粘贴。但后来我直接划归供应商/资产/的fancybox-1.3.4 –

+0

这是错误的内容:'供应商/资产/ JavaScript的/的fancybox-1.3.4/jquery.fancybox-1.3.4.pack.js'。你不*需要'fancybox-1.3.4'目录。 – coreyward

相关问题