1

nil で id を呼び出すと、私の開発環境ではエラーが発生しましたが、本番環境では暗黙のうちに 4 が返されます。開発者はこれに気付かない可能性があります。

では、本番環境でデフォルトで whiny_nils が true に設定されていない特定の理由はありますか?

本番環境で true に設定した場合、何か問題はありますか?

4

1 に答える 1

0

nil文句を言うメソッドの呼び出しは、whiny_nils多くの場合、コードのバグか、それが実行されているデータに問題があることを示しています。これはnil、開発者が予期していなかったものです。開発環境では、これを開発者に知らせて、開発者がそれを行うべきかどうかを確認できるようにします。ただし、製品コードはできるだけ少ないエラーで実行することを望んでいるため、デフォルトでは、.idonを呼び出している場合nil、それは意図的であり、何をしているのかわかっているという前提があります。これは構文エラーではないため、そのままにしておきます。行く。

本番環境に設定whiny_nilsするtrueと、本番サイトでより多くのエラーが発生する可能性が高くなりますが、これは明らかに問題です。一方、意図的に を呼び出し.idていない場合nilは、エラーが表示されるユーザーは、4 で予期しない動作が発生するよりも優れている可能性がありますnil.id

于 2013-10-04T15:15:05.383 に答える