2017-01-17 28 views
1

我有一個圖像blob寫入數據庫中的字段,但我不想在查看用戶對象時在控制檯中看到該輸出。如何在pry/rails輸出中隱藏列

我不需要改變或修改應用程序功能的輸出,這只是用於調試/開發控制檯。我確實嘗試了一些序列化概念,但它們對於這些目的沒有幫助。我還研究了僅對日誌記錄有幫助的filter_parameters,而不是pry控制檯輸出。

我使用軌道控制檯的撬軌寶石,如果這改變了任何東西。

回答

0

您需要覆蓋該對象的inspect方法。 查看inspect的默認實現 - 它使用所有對象的屬性。您必須將其更改爲僅包含要顯示的列/屬性。

0

可以使用select

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

如果你使用這個頻繁,我建議你申報範圍爲您User

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

然後用它在控制檯上:

> User.pry_scope.last