为什么我的下拉菜单在我的本地服务器上运行,但在我推送到heroku时却没有?

时间:2012-07-27 16:54:25

标签: javascript css ruby-on-rails drop-down-menu twitter-bootstrap

当我在本地测试我的网站时它工作正常,但是一旦我推送到heroku,下拉菜单就不起作用了。

我的application.js文件包含:

    //= require bootstrap
    //= require jquery
    //= require jquery_ujs
    //= require_tree .

我的application.html.erb文件包含此

<!DOCTYPE html>
<html>
<head>
    <title> <%= full_title(yield(:title)) %> </title>
    <%= stylesheet_link_tag    "application", :media => "all" %>
    <%= javascript_include_tag "application" %>
    <%= csrf_meta_tags %>
    <%= render 'layouts/shim' %>
</head>

<body>
    <%= render 'layouts/header' %>  
    <div class="container">
        <%= yield %>
    </div>
</body>
</html>

我的标题部分是下拉菜单的位置,包含此

<header class="navbar navbar-fixed-top">
  <div class="navbar-inner">
    <div class="container">
      <ul class="nav pull-left">
        <li>
      <%= link_to image_tag("WML_header2.png", :alt => 'Wheres My Lan'), home_path%> 
        </li>
      </ul>
      <nav>
        <ul class="nav pull-right">
            </br>
            <li><%= link_to "Heat Map",  heatMap_path %></li>
            <% if signed_in? %>
            <li><%= link_to "New Update",  new_message_path %></li>


            <li id="fat-menu" class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">
                View <b class="caret"></b>
              </a>
          <ul class="dropdown-menu">
            <li><%= link_to "Users", users_path %></li>
            <li><%= link_to "Reports", reports_path %></li>
            <li><%= link_to "Statistics", stats_path %></li>
          </ul>
        </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", settings_path %></li>
                <li class="divider"></li>
                <li>
                  <%= link_to "Sign out", signout_path, method: "delete" %>
                </li>
              </ul>
            </li>
          <% else %>
            <li><%= link_to "Admin sign in", signin_path %></li>

          <% end %>
          <li><%= link_to "About",  about_path %></li>
          <li><%= link_to "Contact", contact_path %></li>
        </ul>
      </nav>
    </div>
  </div>
</header>

4 个答案:

答案 0 :(得分:0)

生成的HTML是什么? Chrome开发者工具栏是否有任何错误报告?

我的猜测是期待某个位置的javascript文件,并且没有在那里看到它。

答案 1 :(得分:0)

检查jQuery加载的顺序.jQuery“first”,所有其他插件都会出现。

答案 2 :(得分:0)

您是否尝试在//=require bootstrap之后立即移动//= require jquery?这解决了我的类似问题。

答案 3 :(得分:0)

我遇到了类似的问题,Paolo del Mundo的建议帮助我找到了我做错的事。我在Google Chrome浏览器中查看了HTML,并发现了几个错误:

  • 无法加载资源:服务器响应状态为404 (未找到)

我做了一个StackOverflow搜索该错误,嘿,猜怎么着?结果我忘了在config / environments / production.rb中设置“config.assets.compile = true”。

/ Picardfacepalm

我设置了这个,添加/ comitted /推送到Git,推送到Heroku,刷新Heroku页面 - 在宇宙中一切都很好。