2017-01-17 9 views
1

私は、DB内のフィールドにイメージBLOBを書きましたが、ユーザーオブジェクトを表示したときにその出力をコンソールに表示したくありません。pry/rails出力の列を非表示にする方法

アプリケーションの機能のために出力を変更または修正する必要はありませんが、これはコンソールでデバッグ/開発するためのものです。私はいくつかのシリアライゼーションコンセプトを試みましたが、これらの目的には役立ちません。私はまた、ログ出力に役立つfilter_parametersを調べ、コンソール出力を待っていませんでした。

レールコンソール用にpry-rails gemを使用しています。何か変更があれば、それを使用しています。

答えて

0

オブジェクトに対してinspectメソッドをオーバーライドする必要があります。 inspectのデフォルトの実装を見てください - すべてのオブジェクトの属性を使用します。表示する列/属性のみを含めるように変更する必要があります。

0

あなたは頻繁にこれを使用する場合

User.select(User.attribute_names - ['avatar', 'permalink']).last 

が、私はあなたがあなたのUserクラス

class User < ActiveRecord::Base 
    scope :pry_scope, ->{ select(User.attribute_names - ['avatar', 'permalink']) } 
    ... 
end 
その後、

コンソールにそれを使用するためのスコープを宣言することをお勧めしたいことをやるためにselectを使用することができます。

> User.pry_scope.last 
関連する問題