我正在尝试将我的rails应用程序上传到我的heroku帐户,就像我在(成功地)之前做了几次一样。
heroku login (email and pass)
    rake assets:precompile 
    bundle install --without production
    git add --all
    git commit -am "commit_desc2"
    git push heroku master我得到我的应用程序没有所有的css和js包括在标题中。我认为这是一个资产承诺问题。我不记得做了什么不同的,除了改变设计一点点使用引导。
这是赫鲁库的头
<link href="/assets/application-6dc3bf401e7f79f69a2a156bdeeb7a00.css" media="all" rel="stylesheet" type="text/css" />
  <script src="/assets/application-14e3dc5612ffc200db37e141e57c5af2.js" type="text/javascript"></script>这是本地主机的头
 <link href="/assets/application.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/bootstrapStyle.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/bootstrap_and_overrides.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/ratings.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/scaffolds.css?body=1" media="all" rel="stylesheet" type="text/css" />
  <script src="/assets/jquery.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-transition.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-alert.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-modal.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-dropdown.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-scrollspy.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-tab.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-tooltip.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-popover.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-button.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-collapse.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-carousel.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-typeahead.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-affix.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap.js?body=1" type="text/javascript"></script>
<script src="/assets/bootstrap.js?body=1" type="text/javascript"></script>
<script src="/assets/index.js?body=1" type="text/javascript"></script>
<script src="/assets/ratings.js?body=1" type="text/javascript"></script>
<script src="/assets/application.js?body=1" type="text/javascript"></script>发布于 2012-12-02 21:46:37
来自导轨
在开发模式中,资产按照清单文件中指定的顺序作为单独的文件。
您实际上并没有提出任何问题,但是要明确一点:您的资产没有被跳过。
您在本地主机中看到的(列出的所有文件)都包含在生产中(在一个application.css和application.js文件中)。
在config/evironments/development.rb中
config.assets.debug = true这导致
<%= stylesheet_link_tag "application" %>
<%= javascript_include_tag "application" %>要扩展,为每个javascript和样式表创建单独的脚本和链接标记,这些脚本和样式表将通过链包和Rails资产管道通过您的//=require行包括进来。
在生产中(在heroku上),上面的调试配置选项被设置为false,为您的样式表和javascripts的单个级联/压缩版本提供服务。
我确信,如果您检查Javascript控制台中可以在localhost的<head>中看到的任何Javascript文件中可用的变量/方法,您就会发现它们是存在的。生产中的application.css文件的内容也是如此。
推荐阅读: pipeline.html
https://stackoverflow.com/questions/13674085
复制相似问题