繁体   English   中英

rails活动记录:限制从文本列中打印多少

[英]rails active record: limit how much is printed from text columns

我的用户表中有一个文本列,其中包含一个大的序列化数组。 每当我在Rails控制台中打印用户对象时,都不会看到其他任何字段,因为text列打印的内容太多。 有什么方法可以限制打印多少文本列? 该数据库是postgres。

> puts User.first
> #<User id: 1, uid: "323", name: "overlord", big_serialized_array: ["dafsdfa", "dafsdf" #and it goes on for over 1000 lines ...

您可以指定要打印的字符数:例如: text[0..15]

将此方法添加到您的类中:

def attribute_for_inspect(attr_name)
  value = read_attribute(attr_name)
  return super unless value.is_a?(Hash)
  value = value.inspect
  return value if value.length <= 50
  "#{value.inspect[0..50]}..."
end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM