1
它可能是一个有点琐碎的问题,但始终困扰着我:双引号中的字符串schema.rb
是否有任何具体原因为Rails使用双引号括起来的字符串,而不是单引号的字符串(如rubocop建议)中schema.rb?
它可能是一个有点琐碎的问题,但始终困扰着我:双引号中的字符串schema.rb
是否有任何具体原因为Rails使用双引号括起来的字符串,而不是单引号的字符串(如rubocop建议)中schema.rb?
schema.rb
就是使用双引号的原因是,大多数的格式是由多项预定义的字符串,呼吁#inspect
进行,例如:
# schema_dumper.rb:91
stream.puts " enable_extension #{extension.inspect}"
而且String#inspect
输出字符串与周围的双引号,即:
"foo".inspect
#=> "\"foo\""
也就是说,RuboCop有抓人的错误,所以没有必要对包括由框架生成的文件,这并不意味着可以手动编辑。 (您仍然希望检查使用Rails生成器创建的应用程序文件。)
有趣。感谢你的回答。 :) – ogirginc
因为单引号字符串实际上并不更快。单引号字符串警察大多是一个有见地的BS。 https://stackoverflow.com/questions/1836467/is-there-a-performance-gain-in-using-single-quotes-vs-double-quotes-in-ruby – max
在同一篇文章中的另一个答案说,因为它遵循惯例。 https://stackoverflow.com/questions/1836467/is-there-a-performance-gain-in-using-single-quotes-vs-double-quotes-in-ruby#answer-1836838 –
你有没有看过'放'pancakes'.inspect'? 'String#inspect'使用双引号'#inspect'是一种超级简单的方式来处理转义成Ruby源代码的字符串中的转义。 –