我可以让Devise生成rubocop批准的代码吗?

时间:2019-03-30 15:44:47

标签: ruby-on-rails devise rubocop rolify

我想使用许多工具(包括Devise,authority和rolify)创建一个新的API / MVC项目。我想在这个未开发的项目中建立的一件事是使我的代码库整洁,我想从第一天开始就把它整理好。我尝试这样做,并且rubocop返回228错误。这与那些工具生成的模板代码相反。您可以生成对linter友好的模板文件吗?如果可以,怎么办?或者我注定要修复大量的错误/错误?

1 个答案:

答案 0 :(得分:0)

不幸的是,不可能。

即使您从头启动一个新的Rails项目,Rubocop也会发现问题。例如,Metrics/LineLength警察会将某些代码行检测为违法。

您可能想知道为什么Rails不能事先解决这些问题,所以人们可以在没有任何冒犯的情况下获得一个全新的项目。答案是Rails,因为项目不接受与“外观”更改相关的拉取请求。因此,没有人可以解决这些问题。 Here is此决定的解释。对于Devise,Simpleform等工具也存在同样的情况。

另一方面,Rubocop是一个很棒的工具,但是并不是所有的开发人员都同意默认设置。这就是为什么存在名为.rubocop.yml的原因。

我非常喜欢代码质量,因此,我非常感谢您的意图。您可以尝试通过使用-a标志(rubocop -a)调用rubocop来解决其中许多问题,并手动修复其余问题。在此之后,您将不会收到类似的攻击消息。

我正在使用Rubocop来防止红宝石代码的气味,比如ERB linter的erblint和HTML linter的HTMLHint。我将所有这些工具组合到一个名为quality的rake任务中。运行quality:all时,我会自动检查我的代码库是否有错误,错别字和冒犯行为。您可以看到任务here