2

我有一个简单的下拉菜单,它在本地工作得很好,但是当我将我的应用程序部署到 Heroku 时,它就不起作用了。它不显示菜单选项。所以,当我点击帐户时,什么也没有发生。

这是简单的代码:

      <nav>
        <ul class="nav pull-right">
          <% if signed_in? %>
            <li><%= link_to "Home", root_path %></li>
            <li id="fat-menu" class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">
                Account <b class="caret"></b>
              </a>
              <ul class="dropdown-menu">
                <li><%= link_to "Profile", current_user %></li>
                <li><%= link_to "Settings", edit_user_path(current_user) %></li>
                <li class="divider"></li>
                <li>
                  <%= link_to "Sign out", signout_path, method: "delete" %>
                </li>
              </ul>
            </li>
          <% end %>
        </ul>
      </nav>

可能是什么问题?你认为是我这边还是 Heroku 的问题?谢谢你。

4

1 回答 1

4

听起来您的资产管道有问题。查看:

https://devcenter.heroku.com/articles/rails-asset-pipeline

你让 Heroku 预编译你的资产吗?就个人而言,我在部署到 Heroku 之前预编译了所有资产。

 RAILS_ENV=production bundle exec rake assets:precompile

这将预编译您的所有资产并将其放在 public/assets 文件夹下。然后你可以将它们添加到 git 并推送到 heroku。

如果您这样做,您将手动编译,并且您应该在重新部署或更新 Heroku 应用程序之前运行预编译行以捕获您在资产管道中所做的任何更改。

您还可以查看这个问题以及与之相关的问题:

Javascript 功能在 localhost 上工作,但在部署到 Heroku 时不工作

于 2013-10-22T18:14:01.257 回答