【问题标题】:app/web.1: ActionController::RoutingError (No route matches [GET] "/"):app/web.1: ActionController::RoutingError (没有路由匹配 [GET] "/"):
【发布时间】:2014-04-28 23:54:41
【问题描述】:

我已经为此苦苦挣扎了一段时间。所有链接在我的本地主机上都能正常工作,但是,当我尝试将其推送到 Heroku 时,我的浏览器返回“您要查找的页面不存在。”

我的 Paper Trail 插件显示此错误:

ActionController::RoutingError (没有路由匹配 [GET] "/"):

这是我的 routes.db

Portfolio::Application.routes.draw do

  # UI CONTROLLER SETUP
  if Rails.env.development?
    get 'ui/:action', controller: 'ui'
    get 'ui' => 'ui#index'

    get 'work/:action', controller: 'work'
    get 'resume' => 'pages#resume'

    root :to => 'pages#home'
  end

我的主页位于嵌套在视图中的 pages 文件夹中的 home.html.haml 中。 我也尝试过:

root 'pages#home'

这是我的 pages_controller.rb

class PagesController < ApplicationController

  def home
    @no_main_link = true
  end
end

我可以根据要求提供任何其他信息。

【问题讨论】:

    标签: ruby-on-rails heroku custom-routes


    【解决方案1】:

    从routes.rb 中删除if Rails.env.development? 和对应的end。由于没有为 production 环境定义路由,因此您收到错误消息。路线应如下所示:

    Portfolio::Application.routes.draw do
    
      # UI CONTROLLER SETUP
    
        get 'ui/:action', controller: 'ui'
        get 'ui' => 'ui#index'
    
        get 'work/:action', controller: 'work'
        get 'resume' => 'pages#resume'
    
        root :to => 'pages#home'
    end
    

    【讨论】:

      猜你喜欢
      • 2018-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-01
      相关资源
      最近更新 更多