2013-03-02 13 views
10

最近、私はbetter_errors宝石を使用していました。ライブシェル機能(基本的にビューに埋め込まれたRailsコンソール)は非常に便利です。私は、たとえエラーがなくても、私がデバッグ/診断目的で使うことができるこの種のライブシェルにアクセスすることができればと思っています。これは、私のアプリケーションコントローラに組み込み、ステージング環境やプロダクト環境で使用できるように管理者アクセスに制限するのに適しています。ビューにライブレールコンソールを埋め込む

他の同様のツールがありますか?または、おそらくlive_hellからライブシェルを取り除いて私のビューに埋め込む方法はありますか?

+0

コードを見ましたか? https://github.com/charliesome/better_errors – mathieugagne

+0

おそらくそれは 'repl'の部分だと思います。 – mathieugagne

答えて

2

pryを見ましたか?ブラウザでコンソールを開くのは、技術的にはbetter_errorsのようなものではありませんが、同じように機能します。基本的には、コード内のどこにでもbinding.pryを追加するだけで、コード内にブレークポイントを作成して、その時点で必要なものを実行させることができます。

代替として、それhttp://railscasts.com/episodes/280-pry-with-rails

を使用する方法についてrailscastもあります、あなただけのコードでは、その時点でbetter_errorsページが表示されますあなたのコード内の任意の場所にエラーをスローすることができるはずです。

コンソールを開くだけでなく、ステージング/プロダクションでこれを行う方法がわかりません。あなたはおそらく決してProductionにあなたのコードへのそのレベルのアクセスを与えることを望んでいないでしょう。その時点で、そのページにアクセスできる人は誰でもデータベースに完全にアクセスできます。たとえそれが開発者に限られていても、潜在的なセキュリティリスクのように思えます。

+0

はい、私は常にpryを使います。私は、better_errorsをポップアップさせるために常に偽のエラーを投げます。セキュリティ上のリスクは間違いありませんが、アプリケーション(企業内のアプリなど)によってはそれほど悪いことではないかもしれません。 –

関連する問題