ruby-on-rails – Rails控制台冻结手动删除/销毁操作

这种情况多次发生在我身上,我希望我能在这里找到答案.

有时在使用Rails控制台并对对象执行#update或#destroy操作时,我的控制台只会在日志中发布“BEGIN”后冻结.我现在有一个开放的,一个简单的破坏,已经在那里坐了十分钟.

即:

my_object.find(permitted_params[:thing][:id]).destroy

我的Mac上的CTRL C不会杀死它,只是呈现:

^C^C^C^C^C^C^C^C^C^C

然后,当我最终杀死选项卡并重新启动服务器时,我得到:

A server is already running. Check /path/to/app/tmp/pids/server.pid.

然后,当我清除server.pid并尝试重新启动服务器时,我得到:

/Users/nickschwaderer/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/socket.rb:206:in `bind': Address already in use - bind(2) for 127.0.0.1:3000 (Errno::EADDRINUSE)

那时我运行lsof -wni tcp:3000,然后kill -9 #whatever_my_pid_was,最后将所有内容直接设置为重新运行服务器.

什么山姆蓝在这里发生了什么?

最佳答案 这最近发生在我身上,我承认当我发现时,我很惭愧.

确保没有代码停止某处.有一个单独的binding.pry因某些原因被解雇,即使我试图从控制台移除我的对象.

点赞