ruby-on-rails - 使 Rails 生成单引号字符串而不是双引号字符串以满足 RuboCop

标签 ruby-on-rails string rubocop

如何让 Rails 在生成代码(例如迁移)时生成单引号字符串而不是双引号字符串?

我不太关心迁移中使用什么样的字符串,但它会给 RuboCop 带来麻烦。我可以设想 RuboCop 忽略它的唯一方法是,如果我明确告诉它忽略有问题的文件,或者根本不强制执行 Style/StringLiterals cop。

最佳答案

我认为您不应该在自动生成的文件中检查样式,因为您并没有真正编写它们。我会排除诸如 db/data_schema.rb 之类的文件在您的 rubocop.yml文件。

AllCops:
  Exclude:
    - 'db/data_schema.rb'
db/migrate/ 中的文件并不是真正自动生成的,因为您也可以编写自己的迁移。您可以排除 Style/StringLiterals仅适用于您的 rubocop.yml 中的迁移文件:
Style/StringLiterals:
  Exclude:
    - 'db/migrate/*'

您还可以在生成迁移后运行 rubocop 自动更正,因为 Rubocop 可以有效地更正 Style/StringLiterals 违规行为:
rubocop -a

关于ruby-on-rails - 使 Rails 生成单引号字符串而不是双引号字符串以满足 RuboCop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30117878/

相关文章:

ruby-on-rails - 如何在 Rails 中获取客户端的 IP 地址?

ruby-on-rails - 帮我整理我的 ruby

ruby-on-rails - 载波在处理后的图像上添加水印

java - 为什么我无法检查字符串中字符的成员资格?

ruby - 为什么我不应该扩展由 Struct.new 初始化的实例?

sql - 将SQL封装在named_scope中

c# - 使用C#将字符串中的单词大写

java - 在 Android 中匹配多个字符串

sublimetext - 在 Rubocop Sublime Linter 上设置配置文件

ruby - 如果在线禁用 Rubocop 规则,是否需要重新启用它