问题标签 [ruby-style-guide]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1160 浏览

ruby - Ruby 方法重构多行赋值以通过 RuboCop

我一直在尝试调整这种设置复杂分配的方法,并且我正在寻找其他选项以使此功能通过警察。

有人会有想法为我指明正确的方向吗?

现在,我正在修补两个内部 .map 调用。

失败的警察

问题代码

辅助方法

更新错误

在规范中:错误数量的参数(给定 2,预期 1)Failure/Error: SELECT = ->(opt) { opt['type'] == 'product_options' }

parse_items 的分配分支条件大小太高。[17/15]

更新代码

0 投票
1 回答
198 浏览

ruby - Ruby 样式指南和消息记录

我正在开发一个可能会发生很多错误的应用程序。所以我 - 以及将使用此应用程序的管理员 - 对记录所有相关信息非常感兴趣。但我正在为 ruby​​ 风格指南而苦苦挣扎。我喜欢 rubocop 默认值,并且在大多数情况下都适合正常代码。但是对于日志记录,代码行数必须比普通应用程序多得多。

例如,请参阅此构造

是否有一种技巧或通用模式可以在样式指南中以符合方式记录 sich 错误?还是在这种情况下我必须忽略样式指南?

0 投票
1 回答
6312 浏览

ruby-on-rails - Rubocop JSON:如果方法调用的参数跨越多行,则对齐它们

我在测试文件中遇到了 Rubocop 的问题。起初,这是我现在的代码:

这就是 Rubocop 错误输出:

所以我在样式指南中搜索了 JSON 的正确对齐方式。我真的尝试了缩进和换行的每一种组合,但是 Rubocop 每次都会抛出同样的错误。Andy 顺便说一句,将整个 JSON 放在一行中也不是解决方案。任何人都可以解释一下正确的对齐方式,以便 Rubocop 对此感到满意吗?

0 投票
3 回答
6408 浏览

ruby-on-rails - 在 ruby​​ 中重构长字符串的最佳方法是什么?

我有这样一行代码

太长了,读起来不好,这就是 RuboCop 用Metrics::LineLength警告我的原因。

我想将它重构为不长线。

我知道很多方法可以做到这一点,但我想知道哪一种是红宝石风格专家所期望的。

当我需要一个空字符串(如果它为 nil)时,需要该静态方法 util_name 来防止 nil。

0 投票
0 回答
21 浏览

ruby - 单行格式VS越界分页符

Ruby 为最佳实践制定了指导方针,但是当两个指导方针相互矛盾时会发生什么?你更倾向哪个?

例如..

选项 1(不推荐)

选项 2(推荐)

如果您使用选项 2并且文本超出了传统的分页符,会发生什么情况。根据社区准则,哪条规则优先?

谢谢

0 投票
1 回答
533 浏览

ruby - 为什么 Rubocop 默认指南建议在方法定义中使用括号?

为什么 Rubocop /社区驱动的 Ruby 风格指南建议在方法定义中使用括号?

根据情况,方法调用可以带括号也可以不带括号。但是,我的第一印象是,方法调用中缺少括号比方法定义中缺少括号更容易产生歧义。它背后是否有原因,例如让代码更简单,还是因为“历史原因”或“因为它是最普遍的风格”而发生?

澄清:

我不是在征求关于哪种风格更容易阅读的意见。

lintLint/AmbiguousOperator基于do_something *some_array模棱两可的想法和错误的来源(链接)。Style/MethodDefParentheses我想知道(链接)是否也是如此。

在回去找到那些警察的实际名字后,我现在最好的猜测是没有“技术”原因,而是一个是适当的“棉绒”,另一个是“风格”问题。