Ruby on rails 资产:为.js文件预编译?轨道3.1 问题:

Ruby on rails 资产:为.js文件预编译?轨道3.1 问题:,ruby-on-rails,Ruby On Rails,如何让资产管道处理所有的.js文件?(我希望它们单独提供,而不是捆绑到application.js中) 我的页面试图引用的javascript文件有很多404: GET http://<myStagingServer>.heroku.com/assets/<javascriptFilename1_MD5fingerprint> 404 (Not Found) GET http://<myStagingServer>.heroku.com/assets/<

如何让资产管道处理所有的.js文件?(我希望它们单独提供,而不是捆绑到application.js中)

我的页面试图引用的javascript文件有很多404:

GET http://<myStagingServer>.heroku.com/assets/<javascriptFilename1_MD5fingerprint> 404 (Not Found)
GET http://<myStagingServer>.heroku.com/assets/<SubDir>/<javascriptFilename2_MD5fingerprint> 404 (Not Found)
但据我所知,这并没有起到任何作用

背景: 我正在从Rails 3.0升级到3.1,并启用资产管道

迄今为止的亮点:
  • 从竹堆切换到Heroku的雪松堆:
    Heroku创建--stack Cedar
  • 切换到“瘦”作为生产服务器,修复了各种问题:
    gem'thin'
  • 将我的资产从
    public/assets
    移动到
    app/assets
    ,更新代码中的引用以使用
    stylesheet\u link\u tag
    javascript\u include\u tag
    。(加上我为图像所做的一切——它们都很有效。)
  • 正在删除x_sendfile_头配置选项,因为
相关文件:
我认为application.js和application.css中都需要以下内容:

//=需要一棵树

这将加载CSS和JS的资产目录中的所有文件

对于升级到3.1和资产管道上的信息:

✓&搜索=资产+管道


另外:

天哪:我发现了问题:

名称中带有句点的Java脚本和样式表需要显式扩展 例如:

# WORKS
javascript_include_tag "application"
stylesheet_link_tag "application"

# BROKEN
javascript_include_tag "jueryui.custom"
stylesheet_link_tag "jueryui.custom"

# WORKS
javascript_include_tag "jueryui.custom.js"
stylesheet_link_tag "jueryui.custom.css"

我想我可以理解这是为什么,但我认为在任何资产管道教程中都没有很好的文档记录。您的资产文件名中不应该有句点,这是常识吗?

我不知道编译.js和.css意味着什么。我想我将在这里学到一些东西。向我们展示你的application.js/css@duffymo:Heh--我只是想让他们通过链轮(我想)捡起,给他们一个MD5指纹,然后移动到适当的文件夹。我想我应该重新表述我的问题,除非Rails afficionadoes经常使用这个词。@SergioTulentsev,我只是注意到我在application.js中使用了“require_tree”,而不是“require_self”,所以我对它进行了更改。现在,我的开发环境可以正常工作了,但在登台/生产时仍然会出现错误。谢谢,但我正在尝试单独复制这些文件,而不是将它们捆绑到应用程序资产文件中。你已经指出了做后者的正确方法。
//  
// application.js  
//  
//= require_self  
//  
# WORKS
javascript_include_tag "application"
stylesheet_link_tag "application"

# BROKEN
javascript_include_tag "jueryui.custom"
stylesheet_link_tag "jueryui.custom"

# WORKS
javascript_include_tag "jueryui.custom.js"
stylesheet_link_tag "jueryui.custom.css"