7

我是 Ruby on rails 的新手。我通过教程创建了两个基本的演示应用程序learning by examples

突然它停止为我的新示例应用程序工作。

我已经生成了一个控制器Pages和两个动作homecontact并没有什么花哨的。

现在,我无法打开任何页面,除了默认的 index.html rails 页面位于localhost:3000. localhost:3000/pages/homelocalhost:3000/pages/contact返回此错误的页面。

PG::错误

服务器意外关闭连接这可能意味着服务器在处理请求之前或期间异常终止。

有时(通常当我重新启动 postgresql 时),

PG::错误

服务器意外关闭连接这可能意味着服务器在处理请求之前或期间异常终止。 无法发送启动数据包:管道损坏

这是我的堆栈跟踪

activerecord (3.2.8) lib/active_record/connection_adapters/postgresql_adapter.rb:1213:in initialize' activerecord (3.2.8) lib/active_record/connection_adapters/postgresql_adapter.rb:1213:in new' activerecord (3.2.8) lib/active_record/connection_adapter/postgresql_adapter.rb:1213:in connect' activerecord (3.2.8) lib/active_record/connection_adapters/postgresql_adapter.rb:329:in initialize' activerecord (3.2.8) lib/ active_record/connection_adapters/postgresql_adapter.rb:28:in new' activerecord (3.2.8) lib/active_record/connection_adapters/postgresql_adapter.rb:28:in postgresql_connection' activerecord (3.2.8) lib/active_record/connection_adapters/abstract/connection_pool.rb:309:in new_connection' activerecord (3.2.8) lib/active_record/connection_adapters/abstract/connection_pool.rb:319:in checkout_new_connection' activerecord (3.2.8) lib/active_record/connection_adapters/abstract/ connection_pool.rb:241:in block (2 levels) in checkout' activerecord (3.2.8) lib/active_record/connection_adapters/abstract/connection_pool.rb:236:in loop' activerecord (3.2.8) lib/active_record/connection_adapters/abstract/connection_pool.rb:236:in block in checkout' /home/jashwant/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/monitor.rb:211:in mon_synchronize' activerecord (3.2.8) lib/active_record/connection_adapters/abstract/connection_pool.rb: 233:在 checkout' activerecord (3.2.8) lib/active_record/connection_adapters/abstract/connection_pool.rb:96:in 连接中的块'/home/jashwant/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/monitor.rb:211:in mon_synchronize' activerecord (3.2.8) lib/active_record/connection_adapters/abstract/connection_pool.rb:95:in connection' activerecord (3.2.8) lib/active_record/connection_adapters /abstract/connection_pool.rb:404:in retrieve_connection' activerecord (3.2.8) lib/active_record/connection_adapters/abstract/connection_specification.rb:170:in retrieve_connection' activerecord (3.2.8) lib/active_record/connection_adapters/abstract/connection_specification.rb:144:in connection' activerecord (3.2.8) lib/active_record/query_cache.rb:67:inrescue in call' activerecord (3.2.8) lib/active_record/query_cache.rb :61:in call' activerecord (3.2.8) lib/active_record/connection_adapters/abstract/connection_pool.rb:473:in call' actionpack (3.2.8) lib/action_dispatch/middleware/callbacks.rb:28:in block in call' activesupport (3.2.8) lib/active_support/callbacks.rb:405:in run _3261957284442330683_ call _599627944998934036__callbacks' activesupport (3.2.8) lib/active_support/callbacks.rb:405:in __run_callback' activesupport (3.2.8) lib/active_support/callbacks.rb:385:in_run_call_callbacks' activesupport (3.2.8) lib/active_support/callbacks.rb:81:in run_callbacks' actionpack (3.2.8) lib/action_dispatch/middleware/callbacks.rb:27:incall' actionpack (3.2.8) lib/action_dispatch/middleware/reloader.rb:65:in call' actionpack (3.2.8) lib/action_dispatch/middleware/remote_ip.rb:31:in call' actionpack (3.2.8) lib/action_dispatch/middleware/debug_exceptions.rb:16:in call' actionpack (3.2.8) lib/action_dispatch/middleware/show_exceptions.rb:56:incall' railties (3.2.8) lib/rails/rack/logger.rb:26:in call_app' railties (3.2.8) lib/rails/rack/logger.rb:16:incall' actionpack (3.2.8) lib/action_dispatch/middleware/request_id.rb:22:in call' rack (1.4.1) lib/rack/methodoverride.rb:21:incall' rack (1.4.1) lib/rack/runtime.rb: 17:in call' activesupport (3.2.8) lib/active_support/cache/strategy/local_cache.rb:72:incall' rack (1.4.1) lib/rack/lock.rb:15:in call' actionpack (3.2.8) lib/action_dispatch/middleware/static.rb:62:incall' railties (3.2.8) lib/rails/engine.rb:479:in call' railties (3.2.8) lib/rails/application.rb:223:incall' rack (1.4.1) lib /rack/content_length.rb:14:in call' railties (3.2.8) lib/rails/rack/log_tailer.rb:17:incall' rack (1.4.1) lib/rack/handler/webrick.rb:59:in service' /home/jashwant/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/webrick/httpserver.rb:138:in service' /home/jashwant/.rvm/rubies/ruby-1.9.3-p194 /lib/ruby/1.9.1/webrick/httpserver.rb:94:in run' /home/jashwant/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/webrick/server.rb:191:in block in start_thread'

我暂时不使用数据库。我试图这样做,rake db:migrate但它返回相同的错误。

我在 Ubuntu 12.04 上(因为谷歌上的一些错误与 ubuntu 有关)

我在 SO 上发现了类似的问题,但它们正处于某个高级阶段,因此涉及一些高级解决方案。

4

1 回答 1

5

虽然,我没有使用数据库,但在配置中指定端口可以database.yml解决问题。默认情况下,该rails new <app_name> --database=postgresql命令不会放在port那里。

这是我的配置。

development:
  adapter: postgresql
  encoding: unicode
  database: sample_app_development
  pool: 5  
  port: 5433
  username: myusername
  password: mypassword
  reconnect: true
于 2012-10-09T09:33:30.760 回答