我使用SignUp表单在Rails中创建了一个页面,该页面在本地运行良好,一切都很好,所以我在Heroku中部署了该项目,其中statics_page的运行正常,但是此Form无法正常工作,并向我抛出错误:
很抱歉,出了点问题。
如果您是应用程序所有者,请查看日志以获取更多信息。
因此,我查看了日志,在该日志中,一切正常,直到显示为红色为止:
2020-01-26T02:13:09.077537 + 00:00 heroku [router]:at = info method = GET path =“ / signup” host = safe-shelf-03588.herokuapp.com request_id = a96a3ba1-41ed-4963-8f6a-5cd3676954ff fwd =“ 181.115.249.233” dyno = web.1 connect = 0ms服务= 5ms status = 500字节= 1891 协议= https
我查看了论坛,最合乎逻辑的原因是查看路线,但是由于不同的原因,错误500是一个非常常见的问题代码,我没有运气...
这是我的route.rb文件:
Rails.application.routes.draw do
get 'users/new'
root 'static_pages#home'
get '/help', to: 'static_pages#help'
get '/about', to: 'static_pages#about'
get '/contact', to: 'static_pages#contact'
get '/signup', to: 'users#new'
resources :users
end
这是我的数据库。yml:
default: &default
adapter: postgresql
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
timeout: 5000
development:
<<: *default
database: 'my_app_development'
test:
<<: *default
database: 'my_app_test'
production:
<<: *default
database: sample_app_production
username: sample_app
password: <%= ENV['SAMPLE_APP_DATABASE_PASSWORD'] %>
我的个人档案:
web: bundle exec puma -C config/puma.rb
和我的puma.rb文件,以防万一:
workers Integer(ENV['WEB_CONCURRENCY'] || 2)
threads_count = Integer(ENV['RAILS_MAX_THREADS'] || 5)
threads threads_count, threads_count
preload_app!
rackup DefaultRackup
port ENV['PORT'] || 3000
environment ENV['RACK_ENV'] || 'development'
on_worker_boot do
# Worker specific setup for Rails 4.1+
# See: https://devcenter.heroku.com/articles/
# deploying-rails-applications-with-the-puma-web-server#on-worker-boot
ActiveRecord::Base.establish_connection
end
答案 0 :(得分:0)
解决方案是使用以下命令在Heroku中重新安装或安装Postgree DB:
heroku插件:创建heroku-postgresql:hobby-dev
做了一个Rake db:migrate就这样了