2012-03-31 10 views
20

私はちょうどレールプログラミングに入りました。私はプロジェクトをローカルで実行するのに使うことができる2つのプログラムがあるように見えます。Control-Cを押すまで、Foremanが何も出力しないのはなぜですか?

私が気づいた違いは、警察官は私が見ると期待していたものを出力せず、サーバーを閉じるためにctrl + cを押すまでラックマウントを走らせてみると分かります。あたかも隠されているかのように、それらのメッセージはすべて表示されます。

これには理由がありますか?監督にもっと冗長にさせるにはどうすればいいですか?

+0

はあなたのための問題の解決策とは?正解をマークするか、何が欠けているかを教えてください。 – oma

答えて

47

プログラムの出力が表示されない場合は、stdoutをバッファリングしている可能性があります。 Rubyはデフォルトでstdoutをバッファします。

あなたdevelopment.rbファイルに次のコードを置くことによってこの問題を解決することができます

$stdout.sync = true 

http://github.com/ddollar/foreman/wiki/Missing-Output

+0

ありがとう!なぜこれが開発環境のためにデフォルトでオンになっていないのだろうか?Railsのバグのように感じる。 – eblume

+0

しかし、正確にはどこにこのラインをRailsアプリの中に入れますか? config/development.rbの中に? – kikito

+5

@kikitoはい - 環境ファイルの中にあります。また、神経症者はこの答えを受け入れるべきです。 – courtsimas

関連する問題