如何修复 lint 命令给出的 "line is too long" 错误

How to fix "line is too long" error given by lint command

我的 lint 程序说这行太长:

@abc = @def.model_name.where(id: @ghi.id).sum(:jkl) unless @ghi.blank?

我该如何解决?

花了我一段时间但修复了它

@abc = @def.model_name.where(
         id: @ghi.id).sum(:jkl) unless @ghi.blank?

解决方法是缩短线路。

unless @ghi.blank?
  @abc = @def.model_name
             .where(id: @ghi.id)
             .sum(:jkl) 
end

这是在不进行更广泛重构的情况下缩短代码行的普遍接受的方式。

此外,它只是一个 linter。如果您不按照它说的去做,您的代码仍然可以工作,只是可读性会降低。