ruby-on-rails - 启用 rails 的 Rubocop 和 Style/IndentationConsistency

标签 ruby-on-rails ruby rubocop

我正在将 rubocop 用于 Rails 5 项目,并且我已将此添加到我的 .rubocop.yml 中:

Rails:
  Enabled: true

但是我注意到规则 (Style/IndentationConsistency) 失败了,我必须像这样明确地添加它:

Style/IndentationConsistency:
  EnforcedStyle: rails

发生是正常的还是我做错了什么?

最佳答案

您不能只添加 Rails: Enabled: true,您需要添加 Rails 单独的配置,例如(Rails Action Filter、FindEach、FindBy)。

请引用下面给出的 Rails 配置。 你也可以这个链接(https://github.com/bbatsov/rubocop/blob/master/config/default.yml)

  Rails/ActionFilter:
      EnforcedStyle: action
      SupportedStyles:
          - action
          - filter
      Include:
          - app/controllers/**/*.rb

  Rails/Date:
      # The value `strict` disallows usage of `Date.today`, `Date.current`,
      # `Date#to_time` etc.
      # The value `flexible` allows usage of `Date.current`, `Date.yesterday`, etc
      # (but not `Date.today`) which are overridden by ActiveSupport to handle current
      # time zone.
      EnforcedStyle: flexible
      SupportedStyles:
          - strict
          - flexible

  Rails/Exit:
      Include:
          - app/**/*.rb
          - config/**/*.rb
          - lib/**/*.rb
      Exclude:
          - lib/**/*.rake

  Rails/FindBy:
      Include:
          - app/models/**/*.rb

  Rails/FindEach:
      Include:
          - app/models/**/*.rb

  Rails/HasAndBelongsToMany:
      Include:
          - app/models/**/*.rb

关于ruby-on-rails - 启用 rails 的 Rubocop 和 Style/IndentationConsistency,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39095144/

相关文章:

带有 X509 证书的 Ruby SOAP 响应未通过 XML SignatureValue 验证

ruby - VScode 上的 rubocop 不起作用。错误 "rubocop is not executable"

ruby-on-rails - Rubocop:错误 - rubocop 返回退出代码 2

mysql - 地址已在使用 - bind(2) for 178.62.19.65:80 (Errno::EADDRINUSE),如何在端口 80 上重新启动 unicorn

ruby - 显示 couchdb 文档的值

ruby - 遍历嵌套列表中的元素

ruby - Rubocop 25 行 block 大小和 RSpec 测试

html - rails : render partial partially

mysql - 为什么 Rails 将 TEXT 列截断为 65535 个字符?

ruby-on-rails - Sinatra 对像 Controller 这样的 Web 服务的好处