0

我在 rails 中构建了一个应用程序,它在 localhost 上运行良好,但是当我推送到 heroku 时,路线变得一团糟。我的 routes.rb 如下:

get "pages/index"

get "sessions/new"

resources :posts, :users

match '/posts/new', to: 'posts#new'
match '/posts/create', to: 'posts#create'
match '/posts/:id', to: 'posts#show'
match '/posts/index', to: 'posts#index'
match '/posts/edit/:id', to: 'posts#edit'
match '/posts/destroy/:id', to: 'posts#destroy'
match 'admin', to: 'posts#admin'
match 'login', to: 'sessions#new', :as => :sessions
match '/index', to: 'pages/#about', :as => :index

root :to => 'pages#index'

我希望它植根于pages#index,但在heroku上,无论出于何种原因,路线都是不同的,它植根于welcome#index。

我的本地路线 在此处输入图像描述

我的heroku路线

在此处输入图像描述

我删除了欢迎控制器,将其从路由文件中删除,删除了 heroku 上的应用程序并创建了一个新应用程序。

git remote rm heroku
git add .
git commit -a -m "removed welcome"
heroku create --stack cedar
git push heroku master
heroku run rake db:migrate

我仍然在欢迎 #index 获得 heroke 的根。我尝试在生产模式下运行本地服务器(rails s -e production)并且页面显示正确。我检查了heroku日志,没有看到任何错误(除了弃用警告:您在供应商/插件中有插件。在Rails 4.0中将删除对这些插件的支持,但这似乎不是错误导致路由问题)。

听起来是一个很容易解决的问题,但我已经尝试了所有我能想到的和我阅读的所有内容,包括多次删除应用程序并重新启动。帮助将不胜感激。

4

1 回答 1

1

与您的分支合并,master然后推送到 Heroku。一直发生在我身上。

祝你好运。

于 2013-04-28T19:57:02.030 回答